【发布时间】:2014-01-15 12:18:10
【问题描述】:
我正在尝试使用 2 个表创建嵌套的 json 数组。
我有 2 个表 journal 和 journaldetail。
架构是 -
期刊 : journalid, totalamount
journaldetail : journaldetailid, journalidfk, account, amount
journal 和 journaldetail 之间的关系是一对多的。
我想要以下格式的输出:
{ journalid : 1,
totalamount : 1000,
journaldetails : [
{
journaldetailid : j1,
account : "abc",
amount : 500
},
{
journaldetailid : j2,
account : "def",
amount : 500
}
]}
但是,通过按照 post 编写此查询,查询是:
select j.*, row_to_json(jd) as journal from journal j
inner join (
select * from journaldetail
) jd on jd.sjournalidfk = j.sjournalid
输出是这样的:
{ journalid : 1,
totalamount : 1000,
journaldetails :
{
journaldetailid : j1,
account : "abc",
amount : 500
}
}
{ journalid : 1,
totalamount : 1000,
journaldetails :
{
journaldetailid : j2,
account : "def",
amount : 500
}
}
我希望子表数据在父表中作为嵌套数组。
【问题讨论】:
标签: json postgresql-9.2