mysql的case 就是 類似switch的用法,
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信平臺小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了白沙黎族免費建站歡迎大家使用!
SELECT id,case status WHEN '0' then '審核中' WHEN '1' then '通過' WHEN '3' then '禁用' end as "status" from tp_user
if的用法:
select *,if(sex=1,"男","女") as sex from tp_user
mysql中沒有if可以使用case when then end 來代替;
例如:查詢語句select case 字段 when 1 then '一'
when 2 then '二' end from 表名;
控制流程函數(shù)
CASE value WHEN [compare-value] THEN result [WHEN
[compare-value] THEN result ...] [ELSE result] END CASE WHEN [condition]
THEN result [WHEN [condition] THEN result ...] [ELSE result] END
例:
mysql SELECT IF(12,'yes ','no');
- 'yes'
ifnull函數(shù)參數(shù)解析:第一個參數(shù)為 字段的名字,第二個參數(shù)為 最終替換成的值。如果 第一個字段的值 為 NULL,查詢的結(jié)果中 會被 替換成 0.
三目運算:IF(expr1,expr2,expr3) 。如果 expr1是TRUE,則IF()的返回值為expr2; 否則返回值則為expr3
正則解析:如果 第一個 參數(shù)中的正則 匹配成功,if() 的值 為 第二個參數(shù)的值。否則為 第三個參數(shù)的值。
答案(先把 所有 學(xué)生的語文成績 查出來 作為一個 新表,然后 對新表 進行 分組 聚合):
答案: