列中的MySQL数据以行为基础存储

时间:2011-06-21 12:33:30

标签: mysql

我有一个表格,其数据以行为单位存储,如下所示。

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中使用这个。

请帮我解决这个问题。

3 个答案:

答案 0 :(得分:2)

不是你想要的,但除了左连接的负载,我只能建议:

SELECT UID,GROUP_CONCAT(DetailsID SEPARATOR ",") "DetailsIDs",GROUP_CONCAT(Data SEPARATOR ",") "Data" FROM data_table GROUP BY UID;

答案 1 :(得分:2)

使用编码语言进行转换,而不是使用SQL。

答案 2 :(得分:0)

你没有说出你需要输出的地方。如果您需要PHP页面中的输出,只需通过为列中的条目创建循环即可。