Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通用SQL/MySQL将行转换为列_Mysql_Sql_Pivot - Fatal编程技术网

通用SQL/MySQL将行转换为列

通用SQL/MySQL将行转换为列,mysql,sql,pivot,Mysql,Sql,Pivot,我目前正在努力使用MySQL来透视表 表格本身的简化版本可能大致如下: dayName amount --------------------- Monday 34 Tuesday 3453 ... ... 理想情况下,我希望能够把每一天变成一列,每一个金额作为它的价值。 有没有关于以干净的方式做这件事的建议 谢谢 如果您的行始终是一周中的几天,那么您可以使用以下内容: select sum(case when dayName

我目前正在努力使用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
函数


行是否总是具有相同的值?例如,它们总是一周中的几天吗?嘿@DeadEnd--你在这方面运气好吗?