case when 的语法结构如下
CASE 【条件表达式,此表达式可以不写】WHEN 【条件表达式或者CASE表达式的结果】 THEN 【表达式的结果,可以是字段,也可以是一个SQL语句,或者一个字符串】
。。。可以多个WHEN
ELSE 【上面的条件都不合适时可以用这个,不是一定有的】
END
当财务用经常会看到报表中有“收入”,“支出”2项,但是都是同一个数据字段money
表结构
id | title | money | type |
1 | 收入项 | 100 | 1 |
2 | 支出项 | 200 | 2 |
SQL语句如下
SELECT id,title,(CASE type WHEN 1 THEN moneyEND) AS '收入', (CASE type WHEN 2 THEN money END) '支出'
界面显示方式是
序号 | 项目 | 收入 | 支出 |
1 | 收入项 | 100 | |
2 | 支出项 | 200 |