U kunt dit doen met behulp van aggregaten en/of subquery's. Iets als:
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;
Als u dit wilt samenvoegen tot één string/json/iets, plaats het dan gewoon in een andere geaggregeerde query, zoals deze:
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;
Dit is een Postgres-query. Heb geen ervaring met Mysql.