oracle中的decode函数转换成mysql中的语法
题目:
原本的数据格式
转换成如下格式
select grade,
sum(decode(level,"好","1","0")) good,
sum(decode(level,"中","1","0")) middle,
sum(decode(level,"坏","1","0")) bad
from student group by grade
select grade,
sum(if(student.level="好","1","0")) good,
sum(if(student.level="中","1","0")) middle,
sum(if(student.level="坏","1","0")) bad
from student group by grade
使用if来代替decode;
比较大小:sign(a,b)返回0,1,-1分别是a=b; a>b; a<b
还有case when then else end 用法
例如:
CASE WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他' END