校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 一篇文章帶你了解SQL之CASE WHEN用法詳解

一篇文章帶你了解SQL之CASE WHEN用法詳解

熱門標簽:大眾點評星級酒店地圖標注 高清地圖標注道路 外東北地圖標注 臨清電話機器人 拉卡拉外呼系統 云南電商智能外呼系統價格 智能外呼系統復位 話務外呼系統怎么樣 400電話可以辦理嗎

簡單CASE WHEN函數:

CASE SCORE WHEN 'A' THEN '優' ELSE '不及格' END
CASE SCORE WHEN 'B' THEN '良' ELSE '不及格' END
CASE SCORE WHEN 'C' THEN '中' ELSE '不及格' END

 等同于,使用CASE WHEN條件表達式函數實現:

CASE WHEN SCORE = 'A' THEN '優'
     WHEN SCORE = 'B' THEN '良'
     WHEN SCORE = 'C' THEN '中' ELSE '不及格' END

 THEN后邊的值與ELSE后邊的值類型應一致,否則會報錯。如下:

CASE SCORE WHEN 'A' THEN '優' ELSE 0 END

'優'和0數據類型不一致則報錯: 

[Err] ORA-00932: 數據類型不一致: 應為 CHAR, 但卻獲得 NUMBER

簡單CASE WHEN函數只能應對一些簡單的業務場景,而CASE WHEN條件表達式的寫法則更加靈活。

CASE WHEN條件表達式函數:類似JAVA中的IF ELSE語句。

格式:

CASE WHEN condition THEN result

[WHEN...THEN...]

ELSE result

END

condition是一個返回布爾類型的表達式,如果表達式返回true,則整個函數返回相應result的值,如果表達式皆為false,則返回ElSE后result的值,如果省略了ELSE子句,則返回NULL。

下面介紹幾種常用場景。

場景1:有分數score,score60返回不及格,score>=60返回及格,score>=80返回優秀

SELECT
    STUDENT_NAME,
    (CASE WHEN score  60 THEN '不及格'
        WHEN score >= 60 AND score  80 THEN '及格'
        WHEN score >= 80 THEN '優秀'
        ELSE '異常' END) AS REMARK
FROM
    TABLE

 注意:如果你想判斷score是否null的情況,WHEN score = null THEN '缺席考試',這是一種錯誤的寫法,正確的寫法應為:

CASE WHEN score IS NULL THEN '缺席考試' ELSE '正常' END

場景2:現老師要統計班中,有多少男同學,多少女同學,并統計男同學中有幾人及格,女同學中有幾人及格,要求用一個SQL輸出結果。

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

STU_CODE STU_NAME STU_SEX STU_SCORE
XM 小明 0 88
XL 小磊 0 55
XF 小峰 0 45
XH 小紅 1 66
XN 曉妮 1 77
XY 小伊 1 99
SELECT 
	SUM (CASE WHEN STU_SEX = 0 THEN 1 ELSE 0 END) AS MALE_COUNT,
	SUM (CASE WHEN STU_SEX = 1 THEN 1 ELSE 0 END) AS FEMALE_COUNT,
	SUM (CASE WHEN STU_SCORE >= 60 AND STU_SEX = 0 THEN 1 ELSE 0 END) AS MALE_PASS,
	SUM (CASE WHEN STU_SCORE >= 60 AND STU_SEX = 1 THEN 1 ELSE 0 END) AS FEMALE_PASS
FROM 
	THTF_STUDENTS

輸出結果如下:

MALE_COUNT FEMALE_COUNT MALE_PASS FEMALE_PASS
3 3 1 3

場景3:經典行轉列,并配合聚合函數做統計

現要求統計各個城市,總共使用了多少水耗、電耗、熱耗,使用一條SQL語句輸出結果

有能耗表如下:其中,E_TYPE表示能耗類型,0表示水耗,1表示電耗,2表示熱耗

E_CODE E_VALUE E_TYPE
北京 28.50 0
北京 23.51 1
北京 28.12 2
北京 12.30 0
北京 15.46 1
上海 18.88 0
上海 16.66 1
上海 19.99 0
上海 10.05 0
SELECT 
	E_CODE,
	SUM(CASE WHEN E_TYPE = 0 THEN E_VALUE ELSE 0 END) AS WATER_ENERGY,--水耗
	SUM(CASE WHEN E_TYPE = 1 THEN E_VALUE ELSE 0 END) AS ELE_ENERGY,--電耗
	SUM(CASE WHEN E_TYPE = 2 THEN E_VALUE ELSE 0 END) AS HEAT_ENERGY--熱耗
FROM 
	THTF_ENERGY_TEST
GROUP BY
	E_CODE

 輸出結果如下

E_CODE WATER_ENERGY ELE_ENERGY HEAT_ENERGY
北京 40.80 38.97 28.12
上海 48.92 16.66 0

場景4:CASE WHEN中使用子查詢

根據城市用電量多少,計算用電成本。假設電能耗單價分為三檔,根據不同的能耗值,使用相應價格計算成本。

 價格表如下:

P_PRICE P_LEVEL P_LIMIT
1.20 0 10
1.70 1 30
2.50 2 50

當能耗值小于10時,使用P_LEVEL=0時的P_PRICE的值,能耗值大于10小于30使用P_LEVEL=1時的P_PRICE的值...

CASE WHEN energy = (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 0) THEN (SELECT P_PRICE FROM TABLE_PRICE WHERE P_LEVEL = 0)
    WHEN energy > (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 0) AND energy = (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 1) THEN (SELECT P_PRICE FROM TABLE_PRICE WHERE P_LEVEL = 1)
    WHEN energy > (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 1) AND energy = (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 2) THEN (SELECT P_PRICE FROM TABLE_PRICE WHERE P_LEVEL = 2)

 場景5:結合max聚合函數

CASE WHEN 函數使用起來簡單易懂,此篇文章只作了簡單的使用介紹,還需在實際工作中根據業務場景不同來靈活使用。

總結

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!

您可能感興趣的文章:
  • SQL Server中使用判斷語句(IF ELSE/CASE WHEN )案例
  • MySQL巧用sum、case和when優化統計查詢
  • 解決mybatis case when 報錯的問題
  • Oracle用decode函數或CASE-WHEN實現自定義排序
  • MySQL case when使用方法實例解析

標簽:三明 山西 無錫 溫州 福州 定西 阿里 揚州

巨人網絡通訊聲明:本文標題《一篇文章帶你了解SQL之CASE WHEN用法詳解》,本文關鍵詞  一篇,文章,帶你,了解,SQL,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《一篇文章帶你了解SQL之CASE WHEN用法詳解》相關的同類信息!
  • 本頁收集關于一篇文章帶你了解SQL之CASE WHEN用法詳解的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    91色porny| 黄色成人免费在线| 欧美久久久久久久久中文字幕| 亚洲激情av在线| 欧美日本乱大交xxxxx| 午夜精品123| 精品国产伦一区二区三区观看方式 | 亚洲日穴在线视频| 色综合久久久久综合| 亚洲成人激情综合网| 精品日韩99亚洲| 成人国产一区二区三区精品| 一区二区三区在线观看网站| 欧美日韩mp4| 国产美女视频91| 亚洲另类一区二区| 日韩一区二区三区四区| 国产一区欧美二区| 亚洲美女在线一区| 日韩欧美的一区二区| 成人av电影免费在线播放| 亚洲最大色网站| www久久精品| 欧美在线一二三| 国内一区二区视频| 亚洲资源中文字幕| 久久久久久免费毛片精品| 色综合久久久久综合| 韩日欧美一区二区三区| 一区二区不卡在线视频 午夜欧美不卡在| 欧美理论电影在线| 成人精品鲁一区一区二区| 日韩国产在线观看一区| 中文字幕av一区二区三区高| 欧美日韩国产bt| 成人综合在线视频| 免费日韩伦理电影| 一区二区三区在线观看欧美| 精品不卡在线视频| 欧美无乱码久久久免费午夜一区 | 一二三区精品福利视频| 欧美一级视频精品观看| 99精品在线观看视频| 美脚の诱脚舐め脚责91| 伊人色综合久久天天人手人婷| 日韩欧美区一区二| 欧美色国产精品| www.99精品| 国产福利91精品| 免费观看91视频大全| 一区二区在线免费观看| 国产女人18毛片水真多成人如厕| 91精品国产综合久久婷婷香蕉| 色综合天天视频在线观看| 国产麻豆视频一区二区| 青青草伊人久久| 亚洲大片在线观看| 伊人开心综合网| ㊣最新国产の精品bt伙计久久| 久久久久久久久久久久久女国产乱| 欧美精品久久天天躁| 一本大道综合伊人精品热热| 暴力调教一区二区三区| 成人一区二区三区| 国产99精品国产| 国产一区二区美女| 麻豆成人免费电影| 美女精品一区二区| 久久国产精品99久久久久久老狼| 午夜国产不卡在线观看视频| 亚洲国产毛片aaaaa无费看| 亚洲男人天堂av网| 亚洲伦在线观看| 亚洲欧美日韩中文字幕一区二区三区| 国产亚洲精品免费| 久久精品视频在线免费观看| 国产亚洲综合av| 国产欧美综合在线| 国产午夜精品一区二区| 国产三级精品在线| 国产精品久久久久久久久久免费看| 久久午夜羞羞影院免费观看| 久久久影院官网| 国产精品网站一区| 一区在线观看视频| 一区二区三区在线影院| 午夜精品视频一区| 日韩精品乱码免费| 国内精品免费在线观看| 国产91高潮流白浆在线麻豆| 成人性生交大片免费看在线播放 | 韩国精品一区二区| 国产精品夜夜嗨| 成人精品免费视频| 在线欧美一区二区| 91麻豆精品国产自产在线观看一区 | 精品国产露脸精彩对白| 久久无码av三级| 自拍偷拍国产亚洲| 亚洲一区二区视频在线| 亚洲va中文字幕| 一区二区三区美女| 欧美国产一区视频在线观看| 韩国欧美国产一区| 99国产欧美另类久久久精品| 欧美性大战久久久久久久蜜臀| 欧美日本一区二区| 国产欧美一区视频| 一区二区三区四区五区视频在线观看| 日日摸夜夜添夜夜添亚洲女人| 精品一区二区三区日韩| 91丨九色丨黑人外教| 欧美久久久一区| 国产欧美日韩亚州综合| 亚洲综合视频在线观看| 韩国三级中文字幕hd久久精品| 国产精品亚洲视频| 在线观看视频一区二区| 久久久五月婷婷| 亚洲一区二区三区四区在线| 激情国产一区二区| 欧美伊人久久久久久午夜久久久久| 精品奇米国产一区二区三区| 国产精品五月天| 麻豆91精品91久久久的内涵| 久久精品视频免费观看| 国产精品美女久久久久aⅴ国产馆| 成人激情图片网| 欧美一区二区三区日韩视频| 国产视频一区二区在线观看| 一区二区三区四区五区视频在线观看| 日韩二区三区四区| 99久久精品免费看国产免费软件| 欧美一卡二卡三卡四卡| 久久―日本道色综合久久| 亚洲精品成人天堂一二三| 在线观看日韩av先锋影音电影院| 秋霞午夜鲁丝一区二区老狼| 激情文学综合网| 欧美午夜一区二区三区| 国产精品电影一区二区三区| 激情图片小说一区| 制服丝袜中文字幕亚洲| 亚洲欧美一区二区三区极速播放 | 精品成人佐山爱一区二区| 亚洲成人一区二区在线观看| 91蝌蚪porny九色| 国产欧美日本一区二区三区| 青青草一区二区三区| 欧美日韩高清一区二区三区| 中文字幕中文在线不卡住| 国产福利视频一区二区三区| 精品国产伦一区二区三区观看方式 | 日本大胆欧美人术艺术动态| 欧美影院一区二区三区| 一区二区三区中文字幕| 色综合久久久久网| 亚洲精品你懂的| 一本大道久久精品懂色aⅴ | 国产日韩综合av| 国产久卡久卡久卡久卡视频精品| 日韩女优视频免费观看| 美女免费视频一区| 日韩欧美aaaaaa| 国内精品伊人久久久久av一坑| 精品国产污网站| 国产精品一区二区久激情瑜伽| 久久亚洲精精品中文字幕早川悠里| 久久国产精品色| 国产午夜精品一区二区| 成人在线一区二区三区| 国产精品国产三级国产三级人妇| 99视频在线精品| 一区二区三区国产精华| 欧美三级电影在线观看| 日韩精品视频网站| 精品对白一区国产伦| 国产在线精品免费| 国产亚洲综合色| 99在线精品一区二区三区| 亚洲男人的天堂一区二区| 在线观看www91| 日韩精品一级中文字幕精品视频免费观看 | 国产精品不卡一区| 色婷婷精品久久二区二区蜜臂av| 亚洲日本一区二区| 欧美日韩亚洲国产综合| 美女精品一区二区| 欧美韩国日本一区| 在线观看三级视频欧美| 麻豆91免费观看| 国产精品国产三级国产专播品爱网 | 欧美色欧美亚洲另类二区| 免费一级片91| 麻豆精品新av中文字幕| 国产视频不卡一区| 欧美性videosxxxxx| 另类小说图片综合网| 中文字幕一区二区在线观看 | 一本大道久久a久久综合婷婷|