MySQL将属性组合在一起

时间:2013-12-21 14:16:28

标签: mysql hash

我有一个表有重复值,如id->属性关系:

id   attribute
1    abc
2    blah
1    food
1    code
2    sleep

我如何索引它们,以便特定id的属性在结果中聚集在一起?

id
1    abc   food   code
2    blah  sleep

现在,1的哈希值对于id中的所有1都是相同的。这就是为什么我在想哈希? 如果我是对的,请指导我如何在这里申请。谢谢!

1 个答案:

答案 0 :(得分:2)

如果您想要一个将在一行中返回id的所有值的查询,最简单的方法是使用group_concat()

select id, group_concat(attribute)
from table t
group by id;

如果你想在不同的列中使用它们,那么问题就更难了。

我不确定索引或哈希索引与此问题有什么关系。这些基本上是引擎中数据库使用的内部方法,而不是SQL语言的一部分。