1
我是新来的postgres,并尝试了一些东西,然后才从mySQL中跳过。如何使用postgres从子查询中获得行的关联数组
我想要做的是获得关联数组到一个单一的查询。 它与可以选择多种联系方式的用户有关,例如电话,电子邮件和Facebook,我希望将这些联系人恢复到联系人列中。
对于可视化:
{
"first_name": "This",
"last_name": "is me",
"likes": [],
"city": null
}
而且我想获得这样的事:
{
"first_name": "This",
"last_name": "Is me",
"likes": [],
"city": null,
"contact":
[
{"type":1, "value":"[email protected]", "privacy_rule":1},
{"type":4, "value":"myfacebook", "privacy_rule":1},
{"type":9, "value":"mylinkedin", "privacy_rule":1}
]
}
所以主查询将是:
SELECT u.first_name, u.last_name, u.about, ARRAY(SELECT like_id FROM users_likes l WHERE l.user_id = u.user_id), u.city FROM users u WHERE user_id = {id}
子查询窝是的:
SELECT c.type, c.value, c.privacy_rule FROM users_contact c WHERE c.user_id = u.user_id
但我如何将它集成在主要查询返回结果行数组? 它甚至有可能吗?
提前致谢!
Ron