Mysql
 sql >> Database >  >> RDS >> Mysql

Costruisci il grafico a oggetti nidificato dalla relazione SQL hasmany

Puoi farlo usando aggregati e/o subquery. Qualcosa come:

select title, content, json_agg(comments.author, comments.message) as comments
from articles 
join comments on articles.article_id = comments.article_id
group by article_id;

Se hai bisogno di questo aggregato in una stringa/json/qualcosa, avvolgilo in un'altra query aggregata come questa:

select json_agg(sub)
from (
  select title, content, json_agg(comments.author, comments.message) as comments
  from articles 
  join comments on articles.article_id = comments.article_id
  group by article_id) sub;

Questa è una query di Postgres. Non avere esperienza con Mysql.