MySQL выбрать отдельные строки в столбце списка с разделителями-запятыми - PullRequest
11 голосов
/ 01 декабря 2011

В настоящее время у меня есть некоторые sql, который возвращает теги.у них должны быть разные идентификаторы, но они не ... так что мои текущие данные выглядят так:

Microsoft | GGG | 1 | 167
Microsoft | GGG | 1 | 2
Microsoft | GGG | 1 | 1

Что я хотел бы сделать, так это вернуть только одну строку с последним объединенным столбцом всписок с разделителями, например:

Microsoft | GGG | 1 | 167, 2, 1

Я использую для этого MySQL 5.

1 Ответ

26 голосов
/ 01 декабря 2011

Используйте GROUP_CONCAT() для этого, с GROUP BY, охватывающим три других столбца:

SELECT 
  name,   -- Microsoft
  other,  -- GGG
  other2, -- 1
  GROUP_CONCAT(id) AS ids
FROM tbl
GROUP BY name, other, other2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...