在我的 Postgres 数据库中,我有 3 个表。一换users
一换comments
,一换一映射二user_comment_map
。以下是表格的外观:
users
| id | name | age |
|----|------|-----|
| 1 | user | 20 |
comments
| id | mood | subject | content | created_at |
|----|-------|---------|-----------------|--------------------------|
| 1 | happy | funny | here is content | Tue Sep 27 2016 13:44:19 |
| 2 | silly | cool | more content | Tue Sep 27 2016 14:44:19 |
user_comment_map
| id | user_id | comment_id |
|----|---------|------------|
| 1 | 1| 1|
| 2 | 1| 2|
我正在尝试编写导致以下对象的 SQL 查询:
[{
id: 1,
name: "user",
age: 20,
comments: [
{
id: 1,
mood: "happy",
subject: "silly",
content: "here is content",
created_at: "Tue Sep 27 2016 13:44:19"
},
{
id: 2,
mood: "silly",
subject: "cool",
content: "more content",
created_at: "Tue Sep 27 2016 14:44:19"
},
},
{...}
]
我尝试使用joins
,array_agg
但无法获取该格式的数据。任何帮助将非常感激。注意:我也在使用 knex 来构建查询,但我认为 knex 不能在不求助于的情况下处理这样的事情knex.raw