我有一个像这样的存储过程:
select
TransactionDate
from
(select
cast(TransactionDate as Date) as TransactionDate
from RetailTransaction) t
Run Code Online (Sandbox Code Playgroud)
但是,这使得TransactionDate
外部选择的RetailTransaction.TransactionDate
列可以为空,而列不为空.
RetailTransaction.TransactionDate
定义/设计:
内部选择:
外选择:
即使在添加isnull
或coalesce
SQL Server/SSMS之后仍然显示外部选择TransactionDate
列仍然可以为空.
select
TransactionDate
from
(select
isnull(cast(TransactionDate as Date), getdate()) as TransactionDate
from
RetailTransaction) t
Run Code Online (Sandbox Code Playgroud)
如何使TransactionDate
列不可为空?
请注意,该数据库位于Azure上,兼容级别为100(SQL Server 2008).
编辑:
isnull
在外部选择上添加仍然使列可以为外部嵌套查询:
我正在尝试将文本绘制到屏幕上位于二维数组正方形中的一堆矩形上方的空间中。当我尝试将文本绘制到屏幕上时,它显示“在位块传送期间不得锁定表面”。
我试过解锁,没什么区别。
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) 我对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)