㈠ sql中CASE控制語句用法
DECLARE @var int;
CASE @var
WHEN 1 THEN 'var is 1'
WHEN 2 THEN 'var is 2'
ELSE 'var is not 1 or 2' END
㈡ sql語句中case語句用法
不知道你具體什麼資料庫,,給出sqlserver,你上面寫的就對了,
給你寫出詳細的測試記錄吧
CREATETABLEtest(aINT,bVARCHAR(10))
INSERTINTOdbo.test
(a,b)
SELECT1,'a'
UNIONALL
SELECT2,'b'
UNIONALL
SELECTnull,'c'---這里加了一條數據,便於你看出結果
SELECTa,b,c=(CASEWHENISNULL(a,'')=''THENnullELSEbEND)--注個人喜歡用isnull()函數
FROMtest
結果:
1 a a
2 b b
NULL c null
㈢ 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部分將會被自動忽略。
(3)sqlcase怎麼用擴展閱讀:
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來定義別名。
㈣ SQL語句中Case 的用法
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 when 怎麼用
Case具有兩種格式。簡單Case函數和Case搜索函數。
–簡單Case函數:
CASE sex。
WHEN 』1′ THEN 』男』。
WHEN 』2′ THEN 』女』。
ELSE 』其他』 END。
–Case搜索函數:
CASE WHEN sex = 』1′ THEN 』男』。
WHEN sex = 』2′ THEN 『女』。
ELSE 『其他』 END。
這兩種方式,可以實現相同的功能。簡單Case函數的寫法相對比較簡潔,但是和Case搜索函數相比,功能方面會有些限制,比如寫判斷式。還有一個需要注意的問題,Case函數只返回第一個符合條件的值,剩下的Case部分將會被自動忽略。
–比如說,下面這段SQL,將永遠無法得到「第二類」這個結果。
CASE WHEN col_1 IN (『a』, 『b』) THEN 』第一類』。
WHEN col_1 IN (『a』) THEN 』第二類』。
ELSE』其他』 END。
㈦ SQL case 用法 求教!!!
把case 後邊的 「年齡」 去掉就可以了。
case 後邊有欄位的話,when只能去對比字元串,不能寫成條件表達式 case 年齡 when 20 then ...這樣
㈧ sql語句case的用法
select case when stcd='stcd' and tm between 'd1' and convert(varchar(100),year(dateadd(day,1,'d1')))
+'-'+convert(varchar(100),month(dateadd(day,1,'d1')))
+'-'+convert(varchar(100),day(dateadd(day,1,'d1')))
+' 8:00:00' then sum(drp) when stcd='stcd' and tm between convert(varchar(100),year(dateadd(day,-1,'d1')))
+'-'+convert(varchar(100),month(dateadd(day,-1,'d1')))
+'-'+convert(varchar(100),day(dateadd(day,-1,'d1')))
+' 9:00:00' and 'd1' then sum(drp) end drpsum from st_pptn_r你把'stcd'和'd1'換成具體值,試試看。
㈨ sql 資料庫 case 用法~~~
select name,N=(
case when balance=null then '不清'
when balance<1000 then '較少'
when balance>=100 then '其他'
end)
from account
㈩ sql case 的使用方法
相當於一個函數,case var1 when value1 then result1 else result2 end 和case when boolexpression then result1 else result2 end 格式.