date | no |
2017-08-04 | 1 |
2017-08-04 | 1 |
2017-08-04 | 1 |
2017-08-04 | 2 |
2017-08-04 | 3 |
2017-08-04 | 3 |
2017-08-04 | 4 |
2017-08-04 | 5 |
2017-08-04 | 5 |
위와 같은 결과 값이 나왔을때
아래와 같이 no컬럼에 단일 값 가진 행은 제거하고 중복값을 가진 행만 남기려면
어떻게 해야할지 조언구합니다.
감사합니다.
date | no |
2017-08-04 | 1 |
2017-08-04 | 1 |
2017-08-04 | 1 |
2017-08-04 | 3 |
2017-08-04 | 3 |
2017-08-04 | 5 |
2017-08-04 | 5 |
WITH T AS ( SELECT TO_DATE('2017-08-04','yyyy-mm-dd') AS DT,'1' AS NO FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'1' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'1' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'2' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'3' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'3' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'4' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'5' FROM DUAL UNION ALL SELECT TO_DATE('2017-08-04','yyyy-mm-dd'),'5' FROM DUAL ) SELECT DT, NO FROM ( SELECT DT, NO, COUNT(1) OVER(PARTITION BY DT, NO) CNT FROM T ) WHERE CNT > 1