我正在使用mysql。我必须将多个重复的行分隔成列。该表具有以下结构。
但我需要这样。
注意:每个日期时间总是有6条记录。但标题和反馈是动态的。我试着用 select DateTime,
但这并没有给我预期的价值。我写了一段代码(不考虑标题):
select
g.dateTime AS dateTime,
g.feedback as feedback ,
c.title AS title
from gauge g
inner join category c on g.category_id=c.category_id AND c.title ='title' AND g.feedback ='feedback'
group by g.dateTime
这不管用,我试过了 GROUP_CONCAT(.... SEPARATOR'.....' )
这给我的不是预期的输出,只是在一列中给出输出。我的方法可能是错误的。
3条答案
按热度按时间ghhaqwfi1#
我只需要使用条件聚合。在mysql中枚举值有点棘手(除非您使用的是mysql 8+):
我不认为过滤
c.title
以及g.feedback
是正确的。kpbpu0082#
不是一种优化的方法,但您可以将它们连接到表中,并根据行数模6进行过滤。这样,我们可以将这6行分为6个不同的表
http://rextester.com/dlvv64095
kgsdhlau3#
使用动态轴,因为有许多不同的值
摆弄