DB2 SQL查询,用于获取一列中相同值和另一列中不同值的对

wqlqzqxt  于 2022-11-07  发布在  DB2
关注(0)|答案(1)|浏览(171)

有人能帮我编写如下显示数据的查询吗:AMOUNT列有多对重复项,而CASH_CO列的每对重复项都有不同的值。
我累了这个,但它没有显示任何结果。我手动检查DB,有这样的项目。

SELECT S1.AMOUNT, S1.CASH_CO, S1.ACCOUNT_ID
FROM HI_MTI_O1 S1
INNER JOIN HI_MTI_01 S2
ON (S1.ACCOUNT_ID = S2.ACCOUNT_ID AND S1.AMOUNT = S2.CASH_CO)
WHERE (S1.CASH_CO <> S1.CASH_CO AND S1.AMOUNT = S2.AMOUNT)
FETCH FIRST 100 ROWS ONLY;

vwhgwdsa

vwhgwdsa1#

WITH HI_MTI_O1 (ACCOUNT_ID, AMOUNT, CASH_CO) AS
(
  VALUES 
    ( 1, 100, 'BNP')
  , ( 2, 100, 'DB')
  , ( 3, 200, 'SSG')
  , ( 4, 200, 'SSG')
  , ( 5, 300, 'TRGT')
  , ( 6, 300, 'TRGT')
  , ( 7, 500, 'HSBC')
  , ( 8, 600, 'HSBC')
  , ( 9, 800, 'RO')
  , (10, 800, 'EC')
)
SELECT S.*
FROM HI_MTI_O1 S
JOIN 
(
  SELECT AMOUNT
  FROM HI_MTI_O1
  GROUP BY AMOUNT
  HAVING COUNT (DISTINCT CASH_CO) > 1
) G ON G.AMOUNT = S.AMOUNT
ORDER BY S.ACCOUNT_ID

| 帐户标识|数量|现金_CO|
| - -|- -|- -|
| 一个|100个|法国巴黎银行|
| 2个|100个|数据库|
| 九个|八百元|反渗透|
| 10个|八百元|电子商务|

相关问题