sql – 将限制设置为array_agg()
发布时间:2020-05-24 14:35:07 所属栏目:MsSql 来源:互联网
导读:我有以下Postgres查询: SELECT array_agg(Esns.id ) FROM public.Esns, public.PurchaseOrderItems WHERE Esns.PurchaseOrderItemId = PurchaseOrderItems.id AND PurchaseOrderItems.Gr
|
我有以下Postgres查询: SELECT array_agg("Esns".id )
FROM public."Esns",public."PurchaSEOrderItems"
WHERE
"Esns"."PurchaSEOrderItemId" = "PurchaSEOrderItems".id
AND "PurchaSEOrderItems"."GradeId"=2
LIMIT 2;
限制将影响行.我希望它将array_agg()限制为2个项目.以下查询有效,但我在输出中使用引号中的每个条目: SELECT array_agg ("temp")
FROM (
SELECT "Esns".id
FROM public."Esns",public."PurchaSEOrderItems"
WHERE
"Esns"."PurchaSEOrderItemId" = "PurchaSEOrderItems".id
AND "PurchaSEOrderItems"."GradeId"=2
LIMIT 4
) as "temp" ;
这给了我以下输出 {(13),(14),(15),(12)}
有任何想法吗? 解决方法select id[1],id[2]
from (
SELECT array_agg("Esns".id ) as id
FROM public."Esns",public."PurchaSEOrderItems"
WHERE
"Esns"."PurchaSEOrderItemId" = "PurchaSEOrderItems".id
AND "PurchaSEOrderItems"."GradeId"=2
) s
或者如果您希望输出为数组: SELECT (array_agg("Esns".id ))[1:2] as id_array
FROM public."Esns",public."PurchaSEOrderItems"
WHERE
"Esns"."PurchaSEOrderItemId" = "PurchaSEOrderItems".id
AND "PurchaSEOrderItems"."GradeId"=2 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
