Всем привет!
Составил запрос:
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, простите, если вопрос банальный)
Если используете базу 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.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости