Задать вопрос
@pin4uck

Как правильно связать таблицы?

61b9f055685b5621797337.jpeg

Можно ли как-то связать эти таблицы, чтобы поместить все Note из средней таблицы в нижнюю, в ячейку All_note конкретного id-thing? В средней таблице id_thing является FOREIGN KEY - то есть note под конкретный id_thing может быть много.
  • Вопрос задан
  • 88 просмотров
Подписаться 1 Средний 3 комментария
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Или JSON_ARRAYAGG
SELECT `t`.`id_thing`, `t`.`data`, JSON_ARRAYAGG(`n`.`note`) AS `all_notes`
  FROM `things` AS `t`
  LEFT JOIN `notes` AS `n` ON `n`.`id_thing` = `t`.`id_thing`
  GROUP BY `t`.`id_thing`, `t`.`data`

Потому как после GROUP_CONCAT будет непонятно, запятая разделяет отдельные `note` или была внутри одного `note`.
Ответ написан
rozhnev
@rozhnev Куратор тега MySQL
Fullstack programmer, DBA, медленно, дорого
Например можно использовать GROUP_CONCAT
SELECT things.id_thing, things.data, GROUP_CONCAT(note) notes
FROM things
LEFT JOIN notes USING(id_thing)
GROUP BY things.id_thing, things.data
;


MySQL GROUP_CONCAT online
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы