自學SQL之CASE WHEN用法

2021-10-24 18:28:09 字數 886 閱讀 6035

場景1:統計,有多少男同學,多少女同學,並統計男同學中有幾人及格,女同學中有幾人及格,要求用乙個sql輸出結果。

表結構如下:其中stu_***字段,0表示男生,1表示女生:

stu_code

stu_name

stu_***

stu_score

xm小明088

xl小磊055

xf小峰045

xh小紅166

xn曉妮177

xy小伊199

sql語句:

select

sum(

case

when stu_*** =

0then

1else

0end

)as 男生數量,

sum(

case

when stu_*** =

1then

1else

0end

)as 女生數量,

sum(

case

when stu_score >=

60and stu_*** =

0then

1else

0end

)as 男生及格人數,

sum(

case

when stu_score >=

60and stu_*** =

1then

1else

0end

)as 女生及格人數

from

thtf_students

輸出結果:

男生人數

女生人數

男生及格人數

女生及格人數33

13

SQLServer 中Case When的用法

case具有兩種格式。簡單case函式和case搜尋函式。簡單case函式 case when 1 then 男 when 2 then 女 else 其他 end case搜尋函式 case when 1 then 男 when 2 then 女 else 其他 end 這兩種方式,可以實現相同的...

SQLServer 中Case When的用法

case具有兩種格式。簡單case函式和case搜尋函式。簡單case函式 case when 1 then 男 when 2 then 女 else 其他 end case搜尋函式 case when 1 then 男 when 2 then 女 else 其他 end 這兩種方式,可以實現相同的...

關於SQL的case when魅力

最近去面試碰到了兩道關於資料庫的筆試題目 1 有member表 m id int,m varchar 20 其中m 有三個不同值 男 女 null 要求用一條sql語句把member表的m 字段更新成m 的值 男 變成 女 女 變成 男 null 不變 答 update member set m c...