我有这样的查询。
SELECT T1.timestamp, T2.timestamp FROM (SELECT …) AS T1 LEFT OUTER JOIN (SELECT ….) AS T2 ON T1.id = T2.id WHERE T1.timestamp < T2.timestamp
我面临的问题是条件WHERE T1.timestamp < T2.timestamp
将过滤掉T1.timestamp&lt; T2.timestamp以及T2.timestamp为null的行。
在我的用例中,我不希望查询过滤出T2.timestamp为null的行。 T1.timestamp < T2.timestamp
只有在定义了两个时间戳并且应该返回T2.timestamp为空的行时才进行比较。
有没有办法实现这个目标?
答案 0 :(得分:2)
复制N.N.回答这里,所以这个问题没有出现0答案:
WHERE T1.timestamp<= ifnull(T2.timestamp,T1.timestamp)
Pentium10回答:
WHERE T1.timestamp < T2.timestamp OR T2.timestamp IS NULL
(如果N.N.或Pentium10将他们的评论移到答案中,我会删除这个答案)