case-when 是一種 sql 語句中的語法結(jié)構(gòu),結(jié)構(gòu)如下:case 字段名 when 值 then 字段名|值 ...else 字段名|值 end case when 主要用于數(shù)據(jù)的 行列轉(zhuǎn)換(把一列數(shù)據(jù)轉(zhuǎn)換為多列)前置條件:-- 表結(jié)構(gòu)如下:1 2 3 4 5 6 create table demo2 ( country varchar(20),-- 國家 sex int,--
1. CASEWHEN 表達式有兩種形式 復(fù)制代碼代碼如下: --簡單Case函數(shù) CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函數(shù) CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END ...
CASE category WHEN "Holiday" THEN "Seasonal" WHEN "Profession" THEN "Bi_annual" WHEN "Literary" THEN "Random" END AS "Pattern" FROM sales; 9 rows in set (0.00 sec) CREATE TABLE sales( num MEDIUMINT NOT NULL AUTO_INCREMENT, name CHAR(20), winter INT, spring INT, ...
可使用casewhen來實現(xiàn)這個條件,需要嵌套子查詢語句 sql語句代碼示例如下: 復(fù)制代碼代碼如下: SELECT * FROM DemoTable WHERE ((SELECT CASE 1 WHEN condition1滿足條件 THEN 1 ELSE 0 END FROM DemoTable ) +(SELECT CASE 1 WHEN condition2滿足條件 THEN 1 ELSE 0 END FROM DemoTable) ...
沒有,用casewhen 來代替就行了. 例如,下面的語句顯示中文年月 復(fù)制代碼代碼如下: select getdate() as 日期,case month(getdate()) when 11 then '十一' when 12 then '十二' else substring('一二三四五六七八九十', month(getdate()),1)