我目前在尝试使用 MySQL 对表进行透视时遇到了一些困难。
表格本身的简化版本可能类似于:
dayName amount
---------------------
Monday 34
Tuesday 3453
... ...
理想情况下,我希望能够将每一天变成一列,并将每个金额作为其值。 关于以干净的方式进行操作有什么建议吗?
谢谢!
最佳答案
如果你的行总是一周中的几天,那么你可以使用这样的东西:
select
sum(case when dayName = 'Monday' then amount end) as 'Monday',
sum(case when dayName = 'Tuesday' then amount end) as 'Tuesday'
.
.
.
from DaysOfWeek;
不幸的是,MySQL 没有PIVOT
函数。
关于mysql - 通用 SQL/MySQL 将行转换为列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39965756/