當前位置:首頁 » 編程語言 » sqlcase

sqlcase

發布時間: 2022-02-13 09:29:30

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語句用法

不知道你具體什麼資料庫,,給出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 語句

把括弧去掉就好了。

下面是case的兩種用法,可以看下 :

1. 使用帶有 CASE 簡單表達式的 SELECT 語句。

在 SELECT 語句中,CASE 簡單表達式只能用於等同性檢查,而不進行其他比較。下面的示例使用 CASE 表達式更改產品系列類別的顯示,以使這些類別更易於理解。

USE AdventureWorks2008R2;

GO

SELECT ProctNumber, Category =

CASE ProctLine

WHEN 'R' THEN 'Road'

WHEN 'M' THEN 'Mountain'

WHEN 'T' THEN 'Touring'

WHEN 'S' THEN 'Other sale items'

ELSE 'Not for sale'

END,

Name

FROM Proction.Proct

ORDER BY ProctNumber;

GO

2. 使用帶有 CASE 搜索表達式的 SELECT 語句

在 SELECT 語句中,CASE 搜索表達式允許根據比較值替換結果集中的值。下面的示例根據產品的價格範圍將標價顯示為文本注釋。

USE AdventureWorks2008R2;

GO

SELECT ProctNumber, Name, 'Price Range' =

CASE

WHEN ListPrice = 0 THEN 'Mfg item - not for resale'

WHEN ListPrice < 50 THEN 'Under $50'

WHEN ListPrice >= 50 and ListPrice < 250 THEN 'Under $250'

WHEN ListPrice >= 250 and ListPrice < 1000 THEN 'Under $1000'

ELSE 'Over $1000'

END

FROM Proction.Proct

ORDER BY ProctNumber ;

GO

㈣ SQL 語句-case

你可以把該列定義為identity類型!這樣就可以自動加1

create table tab1
(
au_id int identity(1, 1),-->這樣就可以自動加1(第一個1,是從幾開始,第二個1是標識遞增量)
au_name varchar(10)
)

㈤ 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將被自動忽略。

(5)sqlcase擴展閱讀:

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的用法

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 end 是什麼意思

case when 條件1 then 結果1 when 條件2 then 結果2 .......... else 結果n end
就是滿足條件1時,輸出結果1,滿足條件2時輸出結果2,
如果條件都不滿足,輸出結果n

㈧ SQL CASE語句

不要使用when null來判斷,等於NULL的時候判斷不出來的
你可以當欄位等於NULL時給一個默認值。比如
(CASE isnull(field,'')
WHEN '1' THEN '1'
WHEN '' THEN '1'
ELSE '0' END
) AS field
或者在when後邊寫條件
case when field = '1' then '1' when field is null then '1' else '0' end as field

㈨ SQL中case when的用法

CASE
WHEN要麼是查詢條件要麼是查詢結構,表名逗號後面沒用,語法不對

熱點內容
Uc瀏覽器上傳 發布:2025-01-09 01:50:16 瀏覽:527
javamysqljar 發布:2025-01-09 01:50:14 瀏覽:770
屏幕設置密碼怎麼設置 發布:2025-01-09 01:48:01 瀏覽:344
快吧我的世界盒子伺服器連接不上 發布:2025-01-09 01:36:11 瀏覽:381
搭建中轉雲伺服器挖礦 發布:2025-01-09 01:27:12 瀏覽:549
存儲過程中的for循環 發布:2025-01-09 01:25:38 瀏覽:862
阿里雲伺服器寬頻是專線嗎 發布:2025-01-09 01:22:42 瀏覽:603
上門修個密碼箱鎖多少錢 發布:2025-01-09 01:21:49 瀏覽:267
python企業培訓 發布:2025-01-09 01:17:14 瀏覽:891
怎樣存儲氣體 發布:2025-01-09 01:17:13 瀏覽:261