Как перечислить и сгруппировать одинаковые записи в разных столбцах? - PullRequest
0 голосов
/ 14 января 2019

Здравствуйте, у меня одна таблица имеет 2 столбца, как

group_id   product_id
2          65
2          50
2          30
2          60
2          42
5          40
5          42
6          30
6          65
6          60
7          90
7          40

Я хочу получить список записей идентификатора продукта в том же идентификаторе группы

1 Ответ

0 голосов
/ 14 января 2019

Вы не указали желаемый результат. Но если вам нужен список через группу, разделенный запятыми, вы можете сделать что-то вроде этого из следующих потоков StackOverflow:

MySQL

SELECT t.group_id,
       GROUP_CONCAT(t.product_id) AS product_id_group
FROM [YOURTABLE] t
GROUP BY t.id, t.product_id;

Результаты MySQL в виде списка через запятую

SQL Server

SELECT group_id, product_id = 
    STUFF((SELECT ', ' + product_id
           FROM [YOURTABLE] t1
           WHERE t1.group_id = t2.group_id 
          FOR XML PATH('')), 1, 2, '')
FROM [YOURTABLE] t2
GROUP BY group_id

SQL Server: предложение GROUP BY для получения значений через запятую

Это вернет набор результатов, например:

group_id    product_id
2           65, 50, 30, 60, 42
5           40, 42
6           30, 65, 60
7           90, 40
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...