【发布时间】:2020-08-25 06:49:37
【问题描述】:
我的“客户”表有:
id name registered_on status
-- ------- ------------- ------
1 Alice 2020-03-04 a
2 Vincent 2020-03-05 p
3 Anne 2020-03-06 a
和表“帐户”:
client_id account_number type balance
--------- -------------- ---- -------
1 300-1 CHK 100
2 307-5 SAV 24
2 307-6 CHK 350
我在DB Fiddle 中创建了它们。
现在,我需要一个 SQL 查询来生成 1:n JSON 文档。
表格之间存在 1:n 关系,部分客户可能没有帐户(例如“Anne”):
[
{
"id":1,
"name":"Alice",
"registered_on":"2020-03-04",
"status":"a",
accounts: [
{
"account_number": "300-1",
"type": "CHK",
"balance": 100.00
}
]
},
{
"id":2,
"name":"Vincent",
"registered_on":"2020-03-05",
"status":"p",
accounts: [
{
"account_number": "307-5",
"type": "SAV",
"balance": 24
},
{
"account_number": "307-6",
"type": "CHK",
"balance": 350
}
]
},
{
"id":3,
"name":"Anne",
"registered_on":"2020-03-06",
"status":"a",
accounts: [ ]
}
]
结果是一个简单的连接(可能是外部连接),我知道该怎么做。我只是不知道如何从中生成 JSON 文档。
【问题讨论】:
标签: sql json postgresql aggregate-functions jsonb