我有一个以行为单位存储数据的表,如下所示。
UID | DetailsID | Data|
----------------------|
1 | 1 | A |
1 | 2 | 200|
1 | 3 | 2010-10-11 08:32 |
2 | 1 | B |
2 | 2 | 600|
2 | 3 | 2011-05-20 14:56 |因此,我需要如下输出
UID|1|2|3
------------
1|A|200|2010-10-11 08:32
2|B|600|2011-05-20 14:56这里主要的事情是,DetailsID值的条目数是未知的。
我想把这个放在MySQL里。
请帮我解决这个问题。
发布于 2011-06-21 20:40:41
不完全是你想要的,但是除了大量的左连接之外,我只能建议:
SELECT UID,GROUP_CONCAT(DetailsID SEPARATOR ",") "DetailsIDs",GROUP_CONCAT(Data SEPARATOR ",") "Data" FROM data_table GROUP BY UID;发布于 2011-06-21 20:41:53
在您的编码语言中进行转换,而不是在SQL中。
发布于 2011-06-21 20:42:14
你没有说你需要输出到哪里。如果您需要PHP页面中的输出,那么只需为列中的条目创建循环即可。
https://stackoverflow.com/questions/6425282
复制相似问题