플래그에 따른 데이터 안보이기 0 1 461

by 정우성 [SQL Query] [2019.09.11 17:37:03]


데이터가 년도, 분기. 이렇게 있는는데요.

만약 해당 년도 분기를 가진데이터가 플래그가 D로 들어오면  해당데이터는 안보이게 제외처리하고 싶거든요

데이터 예)

년도 분기 플래그 금액

2019 1  I 10,000

2019 2 I 20,000

2019 1 D 10,000

이렇게 되어 잇으면, 2019 2분기만 표시되게요

by 춘 [2019.09.11 23:21:42]
WITH T AS
(
    SELECT 2019 년도, 1 분기, 'I' 플래그, '10,000' 금액 FROM DUAL
    UNION ALL
    SELECT 2019, 2, 'I', '20,000' FROM DUAL
    UNION ALL
    SELECT 2019, 1, 'D', '10,000' FROM DUAL
)
SELECT
    *
FROM T
WHERE (년도, 분기) NOT IN  (
                          SELECT
                              년도
                              , 분기
                          FROM T
                          WHERE 플래그 = 'D'
                          )
;

WITH T AS
(
    SELECT 2019 년도, 1 분기, 'I' 플래그, '10,000' 금액 FROM DUAL
    UNION ALL
    SELECT 2019, 2, 'I', '20,000' FROM DUAL
    UNION ALL
    SELECT 2019, 1, 'D', '10,000' FROM DUAL
)
SELECT
    *
FROM T A
WHERE NOT EXISTS  (
                          SELECT
                              1
                          FROM T B
                          WHERE A.년도 = B.년도
                          AND A.분기 = B.분기
                          AND 플래그 = 'D'
                          )
;
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입