Select Case实现行转列SQL示例
selectcase 的行转列 SQL,思路清晰,语法一目了然,关键是——一条 SQL 就能搞定所有汇总,干净利落。
select case when的组合方式,挺适合报表类的需求,比如你想把某个用户的每月消费按列展示,每一列是一个月份,这时候它就派上用场了。
写法上其实不复杂,核心逻辑就是根据条件匹配,把某列的数据“变成”新的一列。你可以简单理解成:case
判断当前行是不是你要的,再sum()
一把,汇总一下。
整个 SQL 看起来有点长,但其实套路蛮固定。想拓展也方便,比如多加几个when
分支,或者改下分组字段就行。响应也快,适合用在一些不太好搞动态结构的场景里。
我顺手也挖了几个相关的案例,有用得上的话,可以直接点进去看看:
如果你平时有做数据看板、动态报表之类的功能,这种行转列的技巧还挺常用的,建议保存一份。下次一来类似需求,不用绞尽脑汁。
下载地址
用户评论