SQL中的CASE WHEN語句用于根據(jù)條件進行條件判斷和返回不同的結(jié)果。
其基本語法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
其中,condition1
、condition2
等是各種條件表達式,result1
、result2
等是根據(jù)條件表達式返回的結(jié)果。
CASE WHEN語句的執(zhí)行邏輯如下:
從上到下依次判斷每個條件表達式,如果某個條件表達式為真,則返回對應的結(jié)果,并結(jié)束語句的執(zhí)行;
如果所有條件表達式都為假,且有ELSE子句,則返回ELSE子句中的結(jié)果;
如果所有條件表達式都為假,且沒有ELSE子句,則返回NULL。
CASE WHEN語句可以嵌套使用,也可以在SELECT語句、WHERE語句、ORDER BY語句等中使用。它可以用于對查詢結(jié)果進行條件判斷和轉(zhuǎn)換,以及進行數(shù)據(jù)的分組和聚合操作。