Сгруппировать строки

152
04 мая 2019, 08:20

Всем привет!

Составил запрос:

select ta.id, ct.tag_id
from table_a ta join table_tags ct on ta.id = ct.table_a_id
where ct.tag_id in (1,2,3)

Дополняю этот запрос строкой group by cr.id:

select ta.id, ct.tag_id
from table_a ta join table_tags ct on ta.id = ct.table_a_id
where ct.tag_id in (1,2,3)
group by cr.id

Как сделать так, чтобы в tag_id второго элемента были все три тега в одной строке (1, 2 и 3)? Можно в формате varchar

Я не большой специалист в sql, простите, если вопрос банальный)

Answer 1

Если используете базу MySQL, то используйте функцию group_concat.

В итоге ваш запрос будет:

select ta.id, 
    group_concat(ct.tag_id) as group_tag_id
from table_a ta join table_tags ct on ta.id = ct.table_a_id
where ct.tag_id in (1,2,3)
group by ta.id

Пример на db-fiddle.

READ ALSO
Не отображается блок по центру при изменении размера окна

Не отображается блок по центру при изменении размера окна

Столкнулся с такой проблемой: при изменении размера окна, все колонки отлично становятся в центр, изменяя при том свое число в ряду, а вот...

148
Как сделать динамичный background, при заданном filter:blur?

Как сделать динамичный background, при заданном filter:blur?

помогите решить проблемуЕсть header с содержимым, ему задал background-image, "заблюрил", задал linear-gradient, чтобы filter не вылез на весь блок header создал для...

147
Изменение рамки когда select нажат

Изменение рамки когда select нажат

Подскажите пожалуйста, как изменить цвет синей рамки когда select нажат? http://joxiru/Q2KQLQKh4xMdyr

164
Binding нескольких коллекций как одной

Binding нескольких коллекций как одной

Есть коллекция (ObservableCollection) A, каждый объект коллекции A имеет коллекцию B (ObservableCollection)Нужно сделать Binding для DataGrid ItemsSource всех коллекций B, каждая...

155