gpt4 book ai didi

sql - 在 Oracle 中使用 LISTAGG 函数

转载 作者:行者123 更新时间:2023-12-02 01:27:15 24 4
gpt4 key购买 nike

我有两张 table

category--------id      product     seq_numcat12   prod12      0cat23   prod12      1cat34   prod12      2prod-----sku     prod    seq_numsku123  prod12  0sku234  prod12  1sku345  prod12  2

我正在尝试使用 LISTAGG 函数并带来如下输出:

output------skuid   prod    catidssku123  prod12  cat12,cat23,cat34sku234  prod12  cat12,cat23,cat34sku345  prod12  cat12,cat23,cat34

当我单独使用类别表时,我能够使用 LISTAGG 并正确聚合输出(没有 skuid)

使用以下查询:

SELECT product,LISTAGG(id, ',') WITHIN GROUP (ORDER BY id) AS catidsFROM categoryGROUP BY product;

但我无法将它与 prod 表连接起来并获得所需的输出。请帮忙。

最佳答案

你可以在加入后做:

SELECT s.sku,t.product,
LISTAGG(t.id, ',') WITHIN GROUP (ORDER BY id) AS catids
FROM category t
INNER JOIN prod s
ON(t.product = s.prod)
GROUP BY t.product,s.sku;

关于sql - 在 Oracle 中使用 LISTAGG 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36419938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com