case when then else 详解
生活随笔
收集整理的這篇文章主要介紹了
case when then else 详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文發布時間為:2008-10-15 —— 來源于本人的百度文章 [由搬家工具導入]
sql語句判斷方法之一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部分將會被自動忽略。
例子:
有一張表,里面有3個字段:語文,數學,英語。其中有3條記錄分別表示語文70分,數學80分,英語58分,請用一條sql語句查詢出這三條記錄并按以下條件顯示出來(并寫出您的思路):
大于或等于80表示優秀,大于或等于60表示及格,小于60分表示不及格。
顯示格式:
語文 數學 英語
及格 優秀 不及格
------------------------------------------
select
(case when 語文>=80 then '優秀'
when 語文>=60 then '及格'
else '不及格') as 語文,
(case when 數學>=80 then '優秀'
when 數學>=60 then '及格'
else '不及格') as 數學,
(case when 英語>=80 then '優秀'
when 英語>=60 then '及格'
else '不及格') as 英語,
from table
轉載于:https://www.cnblogs.com/handboy/p/7141621.html
總結
以上是生活随笔為你收集整理的case when then else 详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [LOJ#2270][BZOJ4912]
- 下一篇: MySQL缓存之Qcache与buffe