我在MYSQL数据库中有数据如下所示:
Project Date Time
A 2009-01-01 15
A 2009-01-02 10
B 2009-01-02 30
A 2009-01-09 15
C 2009-01-07 5
我想从这些数据中产生输出:
Date Project A Time Project B Time Project C Time
2009-01-01 15 0 0
2009-01-02 10 30 0
2009-01-07 15 0 5
可以使用SQL查询完成,还是需要编写外部脚本来通过数据库进行迭代并组织输出?
(另外,如果有人对主题行有更好的建议,请告诉我,我会编辑问题;我不确定描述当前和所需格式的正确术语,这会使搜索此信息难)
答案 0 :(得分:1)
您正在寻找pivot / crosstab支持。这是一个很好的链接。
答案 1 :(得分:1)
我相信这叫做Pivot表。只需谷歌吧。
答案 2 :(得分:1)
我一直在寻找类似的东西,并找到了一个完美运行的MySQL存储过程:
http://forums.mysql.com/read.php?98,7000,250306#msg-250306
您正在寻找的结果可以通过以下简单的调用获得:
调用pivotwizard('date','project','time','from_table','where_clause')