sql 中的 case 語法提供了一種有條件地選擇不同表達式的機制。它有四種類型:簡單:檢查條件真偽返回結果。搜索:比較值返回匹配結果。范圍:基于范圍條件返回結果。nullif:檢查表達式是否相同,相同則返回 null。
SQL 中的 CASE 語法
SQL 中的 CASE 語法提供了一種有條件地選擇不同表達式的強大機制。它有四種類型:
1. 簡單 CASE 語法
<code>CASE WHEN 條件 THEN 結果 ELSE 其他結果 END</code>
登錄后復制
用于簡單的條件檢查,僅當條件為真時才會返回結果。
2. 搜索 CASE 語法
<code>CASE 表達式 WHEN 值1 THEN 結果1 WHEN 值2 THEN 結果2 ... ELSE 其他結果 END</code>
登錄后復制
用于比較表達式和一系列值,并根據匹配的值返回相應的結果。
3. 范圍 CASE 語法
<code>CASE WHEN 表達式 BETWEEN 值1 AND 值2 THEN 結果1 WHEN 表達式 BETWEEN 值3 AND 值4 THEN 結果2 ... ELSE 其他結果 END</code>
登錄后復制
用于基于給定的范圍條件返回結果。
4. NULLIF CASE 語法
<code>NULLIF(表達式1,表達式2)</code>
登錄后復制
用于檢查兩個表達式是否相同,如果相同則返回 NULL,否則返回表達式1。
每種 CASE 語法的選擇取決于要實現的具體邏輯。這些語法廣泛用于數據轉換、條件檢查以及在不同條件下返回特定值的情況。