计数子查询

问题描述 投票:0回答:1

我正在尝试一个子查询,其中我获取具有不同所有者的所有重复帐户。但我在第 4 行遇到错误,我不知道我能做什么或你推荐什么方法。例如,此表显示了结果应如何显示。

账户 业主
204060 乌戈·托雷兹
204060 路易斯·弗洛雷斯
32565963 埃里克·里拉
32565963 诺伊·普列托
SELECT issuing_account, COUNT(1)
FROM TBL_TXN
WHERE 1 = 1 group by issuing_account
HAVING COUNT(1) > 1
(SELECT DISTINCT OWNERS
                  FROM TBL_TXN
            WHERE TRANSACTION_TYPE='B');
sql database oracle subquery
1个回答
1
投票

如果您发布一些示例数据(以及所需的结果),那就更好了,因为 - 没有这些 - 我们只能尝试猜测您拥有什么。

这是我的猜测:如果每个发行帐户可以有多个所有者,则聚合他们(使用

listagg
函数)。

你写的子查询放错地方了;我认为它应该是一个数据源(内联视图,在本例中 - 也可能是一个 CTE)。

类似这样的:

select issuing_account,
       listagg(owners, ', ') within group (order by null) owners,
       count(*)
from (select distinct owners, issuing_accounts
      from tbl_txn
      where transaction_type = 'B'
     )
group by issuing_account
having count(*) > 1
© www.soinside.com 2019 - 2024. All rights reserved.