오라클 쿼리 질문이요! 0 1 1,746

by 꽃사슴 [SQL Query] [2022.11.24 23:34:27]


안녕하세요? 오라클 초보예요

쿼리를 수정해야하는데 잘 모르겠어서 질문합니다

where절에서 조건에 따라 실행되는 쿼리를 다르게 하고 싶습니다.

원래 쿼리는 부서코드와 지역을 넣으면 부서코드만 파라메터로 던지기 때문에 부서만 나왔는데

부서코드 없이 지역만 넣는다면 해당 지역의 부서 모두 출력되게 하고 싶습니다.

부서코드와 지역코드 같이 들어간다면 부서코드값이 들어간 데이터 값이 나오고 

부서코드가 없다면 지역코드 값이 들어간 값들이 나왔으면 좋겠습니다.
예를 들어

with ss as(
 
select a.dept_cd, b.emp_no 
  from emp1_table a 
  full outer join emp2_table b 
   on a.emp_no=b.emp_no )
 
select a.*, c.dept_cd, c.region 
  from ss a 
left join dept_table c 
on a.dept_cd=c.dept_cd 
where a.job='clerk'
and nvl( ss.dept_cd, c.dept_cd ) in ( select dept_cd from insa_table )


이렇게 되었다면

저는 where절에서 ss.dept_cd가 null이라면 c.region = 'seoul' 이렇게 넣고 싶습니다.

어떻게 해야할까요??

by 마농 [2022.11.25 11:16:52]

쿼리가 이상합니다. 설명도 이해가 힘듭니다.
full outer join 을 왜 하나요?
쿼리 말고 예시자료로 질문 가능한가요? 원본 대비 결과표 형태

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