小编Min*_*ica的帖子

SQL Server将datetime转换为date而不为null

我有一个像这样的存储过程:

select 
    TransactionDate 
from 
    (select 
         cast(TransactionDate as Date) as TransactionDate
     from RetailTransaction) t
Run Code Online (Sandbox Code Playgroud)

但是,这使得TransactionDate外部选择的RetailTransaction.TransactionDate列可以为空,而列不为空.

RetailTransaction.TransactionDate 定义/设计:

在此输入图像描述

内部选择:

内在选择

外选择:

外选择

即使在添加isnullcoalesceSQL Server/SSMS之后仍然显示外部选择TransactionDate列仍然可以为空.

select 
    TransactionDate 
from 
    (select 
         isnull(cast(TransactionDate as Date), getdate()) as TransactionDate
     from 
         RetailTransaction) t
Run Code Online (Sandbox Code Playgroud)

例2

如何使TransactionDate列不可为空?

请注意,该数据库位于Azure上,兼容级别为100(SQL Server 2008).

编辑:

isnull在外部选择上添加仍然使列可以为外部嵌套查询:

外嵌套查询

t-sql sql-server ssms azure-sql-database

8
推荐指数
1
解决办法
221
查看次数

在 blit 期间不得锁定表面

我正在尝试将文本绘制到屏幕上位于二维数组正方形中的一堆矩形上方的空间中。当我尝试将文本绘制到屏幕上时,它显示“在位块传送期间不得锁定表面”。

我试过解锁,没什么区别。

import sys, time, random, pygame
from pygame import *
from time import time,sleep
pygame.init()
global isDragging, inDrag, rightDrag, lastDrag, inDragRight, mouseX,mouseY, borderHeight
isDragging = False
isAuto = False
inDrag= False
inDragRight = False
isFilling = False
done = False
lastDrag = None
rightDrag = None
tickTime = 300
font = pygame.font.SysFont(None, 12,False,False)
dragDelay = 2
BLACK    = (   0,   0,   0)
WHITE    = ( 255, 255, 255)
GREEN    = (   0, 255,   0)
RED      = ( 255,   0, …
Run Code Online (Sandbox Code Playgroud)

python fonts pygame screen rect

5
推荐指数
1
解决办法
6554
查看次数

我需要了解以下MS SQL语句(SELECT FROM VALUES)

我对MS SQL还是很陌生,但是现在我不得不做很多工作。我需要了解这里发生的情况:

    BEGIN TRANSACTION loadHalfdayAbsences;
    INSERT INTO @halfDayAbsences
    ([AbsencePart], 
     [AbsenceId], 
     [DeleteDate], 
     [LastChangeDate]
    )
           SELECT CASE ap.AbsencePart
                      WHEN 1
                      THEN a.AbsenceStart
                      WHEN 3
                      THEN a.AbsenceEnd
                      ELSE CASE
                               WHEN a.AbsenceStartHalfDay = 1
                               THEN DATEADD(DAY, 1, a.AbsenceStart)
                               ELSE a.AbsenceStart
                           END
                  END AS newEnd,
                  CASE ap.AbsencePart
                      WHEN 1
                      THEN 0.50
                      WHEN 2
                      THEN 1.00
                      WHEN 3
                      THEN 0.50
                  END AS newDuration, 
                  [ap].[AbsencePart], 
                  [a].[AbsenceId], 
                  [a].[EmployeeId], 
           FROM
           (
               SELECT AbsencePart
               FROM(VALUES(1), (2), (3)) AS t(AbsencePart)
           ) AS ap
           INNER JOIN dwh.Absence AS a ON 1 = …
Run Code Online (Sandbox Code Playgroud)

sql-server

4
推荐指数
1
解决办法
44
查看次数

标签 统计

sql-server ×2

azure-sql-database ×1

fonts ×1

pygame ×1

python ×1

rect ×1

screen ×1

ssms ×1

t-sql ×1