例如图,需求要将各地的zbz字段对应的值转换为横行
那么此时可以采用case when的语法操作,
select xm,
max(case jg when "安徽" then zbz else 0 end )C01,
max(case jg when "上海" then zbz else 0 end )C02,
max(case jg when "江苏" then zbz else 0 end )C03,
max(case jg when "浙江" then zbz else 0 end )C04
from cs1 where year='2022' and month='03' GROUP BY xm;
最后输出的结果如图
以上即为case when的竖表转横表用法。
第二种 格式 :Case搜索函数
格式说明
case
when 列名= 条件值1 then 选项1
when 列名=条件值2 then 选项2.......
else 默认值 end
提示:通常我们在写Case When的语句的时候,会容易忘记 end 这个结束,一定要记得!!!