쿼리 좀 봐주세요 0 2 1,376

by 뭉게구름 [Oracle 기초] case union 다이나믹 쿼리 [2020.02.01 02:54:06]


거래내역 테이블

거래번호 계좌번호 거래구분(1-입금/2-지급) 처리일자 입금의뢰인명 수취인명 금액
1 A 1 2020.02.01 김하나   1000
2 A 2 2020.02.01   박둘 2000
3 A 2 2020.02.01   이삼 2000

계좌번호 A, 거래구분 입금, 예금주명 김하나

계좌번호 A, 거래구분 지급, 예금주명 박둘 

조회가능한 방법 좀 갈켜주세요???(입력값에 따라서 조회가능하게)

UNION 과 다이나믹쿼리는 사용불가라서요...

SELECT 거래번호, 거래금액
    FROM 거래내역
WHERE  계좌번호 = 'A'
     AND   거래일자 = '20200201'
     AND   CASE WHEN 1 THEN 입금의뢰인명 = 예금주명
                WHEN 2 THEN  수취인명   =  예금주명
           END

 

by 마농 [2020.02.01 09:21:06]
SELECT 거래번호
     , 거래금액
  FROM 거래내역
 WHERE 계좌번호 = :v_계좌번호    -- 'A'
   AND 거래일자 = :v_거래일자    -- '20200201'
   AND 거래구분 = :v_거래구분    -- 1
   AND CASE 거래구분
       WHEN 1 THEN 입금의뢰인명
       WHEN 2 THEN 수취인명
        END = :v_예금주명        -- '김하나'
;

 


by 뭉게구름 [2020.02.01 09:26:11]

감사합니다 이렇게 쓰는구나

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입