Bạn có thể làm điều này bằng cách sử dụng tổng hợp và / hoặc truy vấn con. Một cái gì đó như:
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;
Nếu bạn cần tổng hợp này thành một chuỗi / json / something - chỉ cần gói nó vào một truy vấn tổng hợp khác như sau:
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;
Đây là một truy vấn Postgres. Không hết hạn với Mysql.