프로그래밍

오라클 SQL질문...

테이블이 TB1하고 TB2가 있는데

 

TB1테이블 조회 조건으로 조회가 안될 때 TB2테이블의 일부 값으로 출력되게끔 하고싶음

 

그래서 내가 아는 지식을 총 동원해서 찾은게

 

SELECT CASE WHEN A.XXX IS NULL THEN B.XXX END AS XXX

.....

FROM

TB1 RIGHT OUTER DUAL A ON XXX=XXX, 

(SELECT ... FROM TB2 RIGHT OUTER JOIN DUAL ON XXX = XXX) B

 

이라는.방식인데...

 

OUTER JOIN을 안쓰고 하는 방법은 없을까..?

 

 

11개의 댓글

2020.10.23

case문 안에서 서브쿼리를 돌리면?

단, 이 경우 서브쿼리에서 2개 이상의 행이나 null이 나오지 않도록 신경은 써줘야함

0
2020.10.23
@pangloss

나도 생각해봐도 이게 맞는거같음

CASE문으로 조회 조건으로 조회가 될때는 TB1데이터, 안될떄는 TB2 데이터 하면 되겠지

0
2020.10.23
@pangloss

근데.조회가 안되면 값 자체가 안나와서 0개의 행이 출력되는데 어떻게 case비교해야해??

0
2020.10.23
@Tbps

저 밑에 누가 잘 써줬네 서브쿼리에 nvl 써

0
2020.10.23
@pangloss

조회조건이 안맞으면 NVL자체가 안먹혀서그래... ㅜㅜ

0
2020.10.23
@Tbps

tb1쪽이 null일때? CASE WHEN TB1.AAA IS NULL THEN (SELECT NVL(TB2.AAA) FROM TB2 WHERE.....) ELSE EXPR END 하면 될텐데

0
2020.10.23
@pangloss

기본키 기준으로 조회했을 때 아무것도 없으면 빈 행도 안나오더라구...

 

NULL이라도 나오던걸로 기억하는데 ㅜㅜ

 

그냥 빈 테이블 취급함...

0
2020.10.24
@Tbps

https://geunsik.tistory.com/384

이거 참고

0
2020.10.24
@pangloss

나도 이거보고 본문 쿼리 짠거였음 ㅋㅋㅋ;; 그래서 그냥 조인넣기로함

0
2020.10.23

유니온 올 쓰면 안되낭?

0
2020.10.23

SELECT T.XXX FROM (

SELECT NVL(TB1.XXX, TB2.XXX) AS XXX

FROM TB1 A, TB2 B

WHERE A.XXX = B.XXX(+)

AND .....

) T

 

OR

 

SELECT DECODE(NVL(TB1.XXX,''),'',(SELECT TB2.XXX FROM TB2 WHERE TB1.XXX = TB2.XXX AND ROWNUM

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180570 [정보] 갤럭시핏3 오늘부터 다시 구매 가능하네 건방진뤼팽 0 23 분 전 23
180569 [모바일] a15를 살까... 울그락푸르락 0 30 분 전 16
180568 [정보] ai 더빙 질문 ggaonn 0 59 분 전 17
180567 [컴퓨터] 뭘로 살까.. 게이밍 노트북 VS 데스크탑 7 사람존 0 2 시간 전 102
180566 [잡담] PC랑 TV연결 문제 질문 4 fjekxnw 0 2 시간 전 36
180565 [잡담] 입주예정 개붕이 티비랑 스피커 고민 14 배프고다배파고 0 3 시간 전 71
180564 [컴퓨터] 공유기 익스텐더 설정 이거 층에사는중 0 3 시간 전 26
180563 [모바일] 지금 a34를 사는게 맞나.. 9 울그락푸르락 0 3 시간 전 74
180562 [컴퓨터] PC 고수님들 컴퓨터 좀 봐주십시요 꾸벅 4 방앗간 0 3 시간 전 41
180561 [컴퓨터] 서브 모니터 추천좀 1 년째재수강 0 3 시간 전 28
180560 [잡담] 태블릿 직구했는데 배송조회에 '사고'래.... 3 ✔_✔ 0 5 시간 전 196
180559 [모바일] ㅠㅠ a90 아직 현역인가? 4 슈퍼커브 0 7 시간 전 102
180558 [정보] 개드립 mp4 재생 안되는 사람 보시오 3 쪼렙고양이 1 12 시간 전 89
180557 [컴퓨터] 메인보드 어떤거 써야되죠? 4 함박눈 0 13 시간 전 126
180556 [프로그래밍] 안드로이드 책 추천좀 집에가게해줘 0 14 시간 전 92
180555 [잡담] 갤럭시 앱 아이콘 숫자? 안뜸ㅠ 5 1q2w3es 0 15 시간 전 105
180554 [컴퓨터] 이런 도킹스테이션 어떰? 6 쿠엥쿠엥 0 15 시간 전 218
180553 [잡담] 허먼밀러 뉴 에어론B 하루체감 5 창원토박이 0 16 시간 전 219
180552 [컴퓨터] 노트북 가지고다니기 vs 미니컴퓨터 가지고다니기 15 황제건 0 17 시간 전 194
180551 [잡담] 아이패드 프로 얼마에 나올거 같음? 5 노보케인 0 18 시간 전 167