2つの別々の列を比較して、それらの間の最新の日付を考え出す必要があります。DATEDIFF(minute、date1、date2)を使用してそれらを比較していますが、一部のレコードでは、日付がNullであるため、nullの結果が返され、CASEが台無しになります。
これを回避する方法、またはどの日付がヌルであるかを事前に決定する方法はありますか?
(擬似コード)
UPDATE TABLE
SET NAME = p.name,
NEW_DATE = CASE WHEN DATEDIFF(minute,d.date1,d.date2) <= 0 THEN d.date
ELSE d.date2
END
FROM TABLE2 d
INNER JOIN TABLE3 p
ON d.ACCTNUM = p.ACCTNUM