sql中的case when的用法

2021-06-29 08:19:06 字數 792 閱讀 4029

case有兩種用法

一種是case簡單表示式用法

for example:

case *** 

when  '1'  then  '男'

when '2'   then '女'

else  '其他'

end另外一種是case搜尋表示式的用法

for example:

case when ***='1'  then '男'

when ***='2'  then '女'

else  '其他'

end兩種case函式的else都是可選的,可有可無。另外case when用法也可以用在order by,group by語句中。

下面我們來看一道題目,假設表一是student表,用一句sql得到第二張表的效果?

select sname,isnull(sum(case ssubject when '語文' then sscores end),0) '語文',isnull(sum(case ssubject when '數學' then sscores end),0) '數學',isnull(sum(case ssubject when '物理'  then sscores end),0) '物理',isnull(sum(case ssubject when '化學' then sscrores end),0) '化學' from student group by sname

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

一.單個case when用法 首先,新建乙個表 create table battle riqi date,result varchar 10 插入資料 insert all into battle values to date 2005 05 09 yyyy mm dd win into bat...