Как вы обрабатываете NULL в сравнении DATEDIFF?

Мне нужно сравнить 2 отдельных столбца, чтобы найти самую последнюю дату между ними. Я использую DATEDIFF(minute, date1, date2) для их сравнения, однако в некоторых записях дата равна 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
5
задан user1385330 9 May 2012 в 18:29
поделиться