sqlcasethen
『壹』 sql語句中case,when,then的用法
Select Case 語句在有多個可能的條件必須被檢查時使用。與 If 語句不同,Select Case語句在找到匹配的Case 表達式並執行了Case 表達式和下一個Case 表達式之間的語句後將立即跳出。如果沒有匹配的Case 表達式,將執行其它語句。
Case Else 與lse 的意義相同。Case 語句能接受各種類型的(作為判斷條件的)表達式。表達式可以是單一值、由逗號分隔的一組值、能返回值的函數、用"To"關鍵字指定的值的范圍或者使用"Is"關鍵字對等式或不等式進行測試。您可以連接不同類型的不同表達式,只要將它們用逗號分開即可。
『貳』 sql中case的用法
case 列 when 值1 then 值2 --當列的值等於值1 就返回值2
when 值3 then 值4 --當列的值等於值3 就返回值4
end
case when 列=值1 then 值2 --當列的值等於值1 就返回值2
when 列=值3 then值4 --當列的值等於值3 就返回值4
end
『叄』 SQL語句case怎麼判斷這個欄位為空
SQL數據存儲中,所謂的空,有兩種形式,具體如下:
1、NULL:這是真正意義上的空,假如欄位名為col1,判斷方法為:
CASE THEN col1 IS NULL WHEN '為空' ELSE '不為空' END2、空白:這種是表示空白字元串,假如欄位名為col1,判斷方法為:
CASE THEN col1 = '' WHEN '為空' ELSE '不為空' END
『肆』 SQL語句中case,when,then的用法
用法如下:
復制代碼
SELECT
s.s_id,
s.s_name,
s.s_sex,
CASE
WHENs.s_sex='1'THEN'男'
WHENs.s_sex='2'THEN'女'
ELSE'其他'
ENDassex,
s.s_age,
s.class_id
FROM
t_b_students
WHERE
1=1
這兩個結果是一樣的:
需要注意的一點是,Case函數只返回第一個限定值,其餘的Case將被自動忽略。
(4)sqlcasethen擴展閱讀:
Case有兩種格式:簡單函數和Case搜索函數。
簡單的例子功能:
CASEsex
WHEN『1』THEN『男』
WHEN『0』THEN『女』
ELSE『其他』END
Case搜索函數:
CASEWHENsex=『1』THEN『男』
WHENsex=『0』THEN『女』
ELSE『其他』END
顯然簡單的Case函數天生簡潔,但它們只適用於這種單欄位單值比較,而Case搜索函數具有適用於所有比較用例的優勢。
另一個需要注意的問題是,在Case函數滿足了某個條件之後,其餘的條件將被自動忽略,這樣即使滿足了多個條件,在執行過程中也只能識別第一個條件。
當使用CASEWHEN時,您可以將其視為沒有欄位名的欄位,欄位值是有條件的,並且在需要使用欄位名時可以使用as來定義別名。
『伍』 SQL中case,when,then,else的用法是什麼
用法:
1、第一種寫法:
復制代碼
SELECT
s.s_id,
s.s_name,
s.s_sex,
CASE
WHEN s.s_sex = '1' THEN '男'
WHEN s.s_sex = '2' THEN '女'
ELSE '其他'
END as sex,
s.s_age,
s.class_id
FROM
t_b_student s
WHERE
1 = 1
2、第二種寫法
SELECT
s.s_id,
s.s_name,
s.s_sex,
CASE s.s_sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他'
END as sex,
s.s_age,
s.class_id
FROM
t_b_student s
WHERE
1 = 1
兩個運行結果一樣:
有一個需要注意的問題,Case函數只返回第一個符合條件的值,剩下的Case部分將會被自動忽略。
(5)sqlcasethen擴展閱讀:
Case具有兩種格式:簡單Case函數和Case搜索函數。
簡單Case函數:
CASE sex
WHEN『1』THEN『男』
WHEN『0』THEN『女』
ELSE『其他』END
Case搜索函數:
CASE WHEN sex=『1』THEN『男』
WHEN sex=『0』THEN『女』
ELSE『其他』END
顯然,簡單Case函數生在簡潔,但是它只適用於這種單欄位的單值比較,而Case搜索函數的優點在於適用於所有比較的情況。
還有一個需要注意的問題,Case函數在滿足了某個符合條件後,剩下的條件將會被自動忽略,因此,即使滿足多個條件,執行過程中也只認第一個條件。
在使用CASE WHEN時,可以把它當作一個沒有欄位名的欄位,欄位值根據條件確認,在需要使用欄位名時可以是用as來定義別名。