以下是我的内容
++++++++++++++++++++++++
+ id + field1 + field2 +
++++++++++++++++++++++++
+ 1 + 1 + +
+ 1 + + 1 +
+ 2 + 1 + +
+ 2 + + 2 +
++++++++++++++++++++++++
我想要的是
++++++++++++++++++++++++
+ id + field1 + field2 +
++++++++++++++++++++++++
+ 1 + 1 + 1 +
+ 2 + 1 + 2 +
++++++++++++++++++++++++
我希望将行中的行和数据显示在一行中,而不是像我在表中那样显示多行。
知道该怎么做吗?
注意:我没有任何行拥有所有字段的数据。并且我没有任何用户使用以下方案。
++++++++++++++++++++++++
+ id + field1 + field2 +
++++++++++++++++++++++++
+ 3 + 1 + +
+ 3 + 1 + 1 +
++++++++++++++++++++++++
一行中只有1个数据,每个用户只有两行。
我试过
SELECT id, concat(field1), concat(field2) from myTable
GROUP BY id;
但它没有来。
答案 0 :(得分:3)
汇总分组数据时,您需要使用MySQL的aggregate functions之一。使用GROUP_CONCAT()
代替(非聚合字符串函数)CONCAT()
,否则(更适合数字数据)使用SUM()
:
SELECT id, SUM(field1), SUM(field2) FROM myTable GROUP BY id