首页 > 解决方案 > Oracle SQL - 获取聚合数据

问题描述

我有两张表,一张是产品,另一张是关系产品/模型,我想以表格形式获取所有相关表:

{
"product":"bown",
"models":["a","b"]
}

我怎么能做到这一点?我尝试了 SELECTED、INNER JOIN,但我能看到的最大值如下:

{
"product":"bown",
"models":"a"
},
{
"product":"bown",
"models":"b
}.

这是低效的。

谢谢!

标签: sqljsonoracleoracle-apex

解决方案


SELECT '{"product":"' || product_name || '", "models":["' || LISTAGG(model_name, '","') || '"]}' JSON_data
FROM product
JOIN product_model USING (product_id)
JOIN model USING (model_id)
GROUP BY product_name;

小提琴


推荐阅读