【发布时间】:2018-03-01 12:50:59
【问题描述】:
我有桌子 T1
TICKETID
1
2
我有桌子 T2
ID TICKETID STATUS
1 1 NEW
2 1 OPEN
3 1 CLOSED
4 2 NEW
5 2 OPEN
6 2 RETURNED
我想从 T1 中选择并与 T2 进行 JOIN,如果记录的状态曾经处于 RETURNED 状态,那么我需要有一个值“YES”,否则我需要有一个值“NO”
所以最终结果应该是
TICKETID RETURNED_FLAG
1 NO
2 YES
我尝试过类似的方法,但我不确定这是否是最佳的,甚至是正确的。
SELECT T1.TICKETID, CASE (T2.ID)
WHEN NULL THEN 'NO'
ELSE 'YES'
END FROM T1
LEFT OUTER JOIN T2 ON T1.TICKETID=T2.TICKETID AND T2.STATUS='RETURNED'
【问题讨论】:
-
案例表达式,不是语句。