SQL объединяет 3 строки в 1 с другими значениями, объединенными в строку

#mysql #sql #export

Вопрос:

Эй, у меня проблемы с объединением 3 строк с одинаковым числом, но разными значениями.

У меня есть table , что выглядит так:

artikelnummer kategorie
34462 264
34462 460
34462 331

И я хочу создать инструкцию SQL для CSV экспорта, которая выглядит следующим образом:

artikelnummer kategorie
34462 «264|460|331»

Комментарии:

1. Пожалуйста, отметьте соответствующую базу данных.

2. Я добавил тег

3. Используйте GROUP_CONCAT

Ответ №1:

CONCAT Функция используется для добавления двойных кавычек в начале и в конце.

Group_concat используется для ОБЪЕДИНЕНИЯ значений, это похоже на группировку значений, разделитель по умолчанию , используется свойство SEPARATOR и устанавливает для него значение |

 SELECT artikelnummer,
       Concat('"', Group_concat(kategorie SEPARATOR '|'), '"') kategorie
FROM   tablename
GROUP  BY artikelnummer; 
 

Комментарии:

1. Большое спасибо за это. Я не знал об этой функции, так как я не делал много SQL. (По крайней мере, не в какой-то сложной манере) Я должен разобраться в этом подробнее

Ответ №2:

использование:

    SELECT artikelnummer ,GROUP_CONCAT(kategorie)
    FROM your_table_name
    GROUP BY artikelnummer ;