我尝试提取同一年所有可能的NUMB重复值,这是一个例子
麻木 | TIP_BALAN | FNT | CLOSED_DATE | 持续时间 |
---|---|---|---|---|
94294100000 | A03 | E04 | 31/10/2021 | 15 |
94294100000 | A09 | E04 | 31/08/2021 | 20 |
所以我在 Oracle SQL Developer 上构建这个查询
SELECT ID_PPAL_NUMB AS NUMB,
ID_PPAL_FNT AS FNT,
BLNC_CLOSED_DATE AS CLOSED_DATE,
BLNC_DUR AS DURATION
FROM BLNC_BALANC
INNER JOIN ID_PPAL
ON BLNC_ID_PPAL_NUMB=ID_PPAL_NUMB
WHERE BLNC_SIT='1'
AND ID_PPAL_TIP_REG='1'
AND ID_PPAL_IND_ESTAB='N'
GROUP BY (ID_PPAL_NUMB,ID_PPAL_FNT, BLNC_CLOSED_DATE, BLNC_DUR)
HAVING COUNT(EXTRACT(YEAR FROM BLNC_CLOSED_DATE)) > 1
ORDER BY BLNC_CLOSED_DATE DESC
我有 42 列,但是当我在下一个查询中添加 BLNC_BALANC 中的“BLNC_TIP”列时
SELECT ID_PPAL_NUMB AS NUMB,
BLNC_TIP AS TIP_BALAN,
ID_PPAL_FNT AS FNT,
BLNC_CLOSED_DATE AS CLOSED_DATE,
BLNC_DUR AS DURATION
FROM BLNC_BALANC
INNER JOIN ID_PPAL
ON BLNC_ID_PPAL_NUMB=ID_PPAL_NUMB
WHERE BLNC_SIT='1'
AND ID_PPAL_TIP_REG='1'
AND ID_PPAL_IND_ESTAB='N'
GROUP BY (ID_PPAL_NUMB,ID_PPAL_FNT, BLNC_CLOSED_DATE, BLNC_DUR, BLNC_TIP)
HAVING COUNT(EXTRACT(YEAR FROM BLNC_CLOSED_DATE)) > 1
ORDER BY BLNC_CLOSED_DATE DESC
查询只给我 6 列,所以我尝试了多种方法来避免“分组依据”代码,但我只有 15k 列这样的整个数据。有帮助吗?