SELECT절 조인관련 질문드립니다. 0 1 2,179

by 윤 [SQL Query] ORACLE SELECT JOIN [2021.11.17 11:25:14]


select dept_nm
    , seq
    , path_nm
    , emp_no_1
    , (select emp_nm from table_emp where emp_no_1 = emp_no)
    , emp_no_2
    , (select emp_nm from table_emp where emp_no_2 = emp_no)
    , emp_no_3
    , (select emp_nm from table_emp where emp_no_3 = emp_no)
    , emp_no_4
    , (select emp_nm from table_emp where emp_no_4 = emp_no)
    , emp_no_5
    , (select emp_nm from table_emp where emp_no_5 = emp_no)
    , emp_no_6
    , (select emp_nm from table_emp where emp_no_6 = emp_no)
from table_sign_manage
where dept_cd = :dept_cd
    and seq >= 000
order by dept_cd, seq

 

이렇게 쿼리를 작성했는데 불가피하게 SELECT절에 서브쿼리를 넣을수가 없는 상황입니다

쿼리를 어떻게 수정해야할지.. 감이 안잡히는데 조언 부탁드립니다

by 마농 [2021.11.17 13:12:47]

조건이 이상하네요. seq 의 자료형이 뭔가요?
자료형에 맞게 seq > 0 으로 하거나 seq > '000' 으로 해야 합니다.
그리고 이 조건이 어떤 의도를 가지고 작성된 것인지 궁금하네요.
별 의미 없는 조건인 듯 한데요.

SELECT m.dept_nm
     , m.seq
     , m.path_nm
     , m.emp_no_1
     , e1.emp_nm emp_nm_1
     , m.emp_no_2
     , e2.emp_nm emp_nm_2
     , m.emp_no_3
     , e3.emp_nm emp_nm_3
     , m.emp_no_4
     , e4.emp_nm emp_nm_4
     , m.emp_no_5
     , e5.emp_nm emp_nm_5
     , m.emp_no_6
     , e6.emp_nm emp_nm_6
  FROM table_sign_manage m
     , table_emp e1
     , table_emp e2
     , table_emp e3
     , table_emp e4
     , table_emp e5
     , table_emp e6
 WHERE m.dept_cd = :dept_cd
   AND m.seq >= '000'
   AND m.emp_no_1 = e1.emp_no(+)
   AND m.emp_no_2 = e2.emp_no(+)
   AND m.emp_no_3 = e3.emp_no(+)
   AND m.emp_no_4 = e4.emp_no(+)
   AND m.emp_no_5 = e5.emp_no(+)
   AND m.emp_no_6 = e6.emp_no(+)
 ORDER BY m.dept_cd, m.seq
;

 

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