是否有可能在when語句的case子句中寫入子查詢在case子句中的SQL相關子查詢
ie。
SELECT colA, colB,
CASE WHEN (SELECT colA FROM tab2 WHERE tab2.colA = tab1.colA) THEN '1'
CASE WHEN (SELECT colA FROM tab3 WHERE tab3.colA = tab3.colA) THEN '2'
ELSE '0'
END AS colC,
...
FROM tab1
擴展問題:
是否有可能基於該值列做些什麼? (很確定是的,但想要確認)
即。
CASE
WHEN colC = '1' THEN (select colR FROM...),
WHEN colC = '2' THEN (SELECT ColS FROM...),
ELSE 'doesn't work'
END AS colD
此外,上述情況允許返回多個不同的列,這取決於colC是哪個值?
即。
CASE
WHEN colC = '1' THEN (select colR, colV, colX FROM...),
WHEN colC = '2' THEN (SELECT ColS, ColD FROM...),
ELSE 'doesn't work'
END AS colD
謝謝!
感謝您的建議和解釋。 – Tyug 2010-07-04 18:05:35