Подтвердить что ты не робот

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
4b9b3361

Ответ 1

Вам нужно использовать опцию DISTINCT:

GROUP_CONCAT(DISTINCT animal)