程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> sqlserver中case when用法小結

sqlserver中case when用法小結

編輯:關於SqlServer

       首先建表和插入數據語句:

      use Student

      go

      create table Score

      (

      學號 nvarchar(10),

      課程 nvarchar(10),

      成績 int

      )

      go

      insert into Score values('0001','語文',87);

      insert into Score values('0001','數學',79);

      insert into Score values('0001','英語',95);

      insert into Score values('0002','語文',69);

      insert into Score values('0002','數學',84);

      insert into Score values('0001','語文',95);

      case when 用法一:

      CASE 簡單表達式,它通過將表達式與一組簡單的表達式進行比較來確定結果。

      select 學號,

      sum(case when 課程='語文' then 成績 else 0 end ) as 語文,

      sum(case when 課程='數學' then 成績 else 0 end ) as 數學,

      sum(case when 課程='英語' then 成績 else 0 end ) as 英語

      from Score

      group by 學號

      case when 用法二:

      CASE 搜索表達式,它通過計算一組布爾表達式來確定結果。

      select 學號,成績,

      case 成績

      when 87 then '良'

      when 79 then '良'

      when 95 then '優'

      when 69 then '中'

      else '差' end as test

      from Score

      上面為本人對case when的理解,如有錯誤希望批評指出,多謝!

      注:每個case 對應一列數據

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved