mysql GROUP_CONCAT重复

时间:2010-12-30 09:56:17

标签: sql mysql group-concat

我从像这样的farmTOanimal表中进行连接。有一个类似的farmTotool表

id | FarmID  | animal
 1 |    1    | cat
 2 |    1    | dog

当我在视图中加入我的表时,我得到一个看起来像这样的结果

FarmID | animal | tool
   1   |  cat   | shovel
   1   |  dog   | shovel
   1   |  cat   | bucket
   1   |  dog   | bucket

现在,我做GROUP BY FarmID,GROUP_CONCAT(动物)和GROUP_CONCAT(工具),我得到了

FarmID |     animals     |         tools
  1    | cat,dog,cat,dog | shovel,shovel,bucket,bucket

但是,我真正想要的是一个看起来像这样的结果。我该怎么办?

FarmID | animals |    tools
  1    | cat,dog | shovel,bucket

1 个答案:

答案 0 :(得分:116)

您需要使用DISTINCT选项:

GROUP_CONCAT(DISTINCT animal)