[sql 1]
select b.emp_no, b.emp_nm, a.tot_pay, a.pay_nm from
(select a.emp_no, a.emp_nm, a.tot_pay, a.pay_nm from payt070 a
where yymm=200503
and paygbn = 2) a, payt040 b, emptmpe c
where b.emp_no = a.emp_no(+)
and b.emp_no = c.empno
[sql 2]
select b.emp_no, b.emp_nm, a.tot_pay ,a.yymm,a.paygbn
from payt070 a, payt040 b
where b.emp_no = a.emp_no(+)
and a.yymm=200503
and a.paygbn =2
세개의 테이블이 있습니다.
emptmpe , payt040 , payt070
emptmpe와 payt040에는 반드시 있어야 하고, payt070에는 값을 있으면 가지고 오고, 없으면 표시 안 되게 하고 싶어서, 언뜻 만들어 낸 문장이 [sql 2]였습니다.
원하는 결과가 아니더군요.
그래서, 이래저래 하다보니 [sql 1]문장이 나왔습니다.
결과를 보고 납득은 가지만 좀 더 자세한 설명을 부탁드립니다.