比方说,我有一个表ID
,Date1
和Date2
其中Date2
可以是NULL
。我现在想要一个SQL语句,如果它是NULL
,它将忽略Date2
。WHERE子句条件检查NULL
所以,我需要类似的东西:
SELECT *
FROM
[myTable]
WHERE
ID = @someId
AND Date1 <= GETDATE()
AND Date2 >= GETDATE() IF Date2 IS NOT NULL
所以我要检查,如果日期2不NULL
,然后将其与当前的日期进行比较。如果它是NULL
那么我只是想忽略它。
希望我的要求清晰易懂。
干杯
西蒙
'Date2> = GETDATE()'这个条件**已经**暗示它不是'null' – zerkms
@zerkms这是不正确的。在SQL中与'NULL'的比较定义不明确。 – kirelagin
@kirelagin:“所以我想检查Date2是否不为NULL,然后将它与当前日期进行比较”--- Date2> = GETDATE()对于Date2' IS NULL是永远不会是真的,所以另一个不需要检查 – zerkms