프로그래밍

오라클 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
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
5677 [프로그래밍] Exiftool 이거 일본어 못 읽는데 12 부터시작하는이세... 0 13 시간 전 134
5676 [프로그래밍] 반응형 웹페이지가 내가상상한거랑 좀 다르네 3 평택국 0 1 일 전 326
5675 [프로그래밍] 고졸 FE개발자 연봉, 상황에 조언좀.. 15 쾅꿍꿍 0 1 일 전 430
5674 [프로그래밍] 물경력들 보면 책임을 이해못하는것같음 5 mils 1 2 일 전 270
5673 [프로그래밍] GPT가 코딩 다해주네 3 겜신병자 0 3 일 전 612
5672 [프로그래밍] 크로스플랫폼의 욕심은 끝이없다 4 ye 0 5 일 전 341
5671 [프로그래밍] 월루중에 백준 풀어보고 있는데, 6 오뜨 0 6 일 전 612
5670 [프로그래밍] 같이 일했던 시니어급 개발자 아예 직무 바꿨네.. 15 흐린눈 2 8 일 전 611
5669 [프로그래밍] 안드로이드 스튜디오가 이상해요... 2 집에가게해줘 0 9 일 전 374
5668 [프로그래밍] 양심고백 5 너가전부옳아 0 10 일 전 354
5667 [프로그래밍] 멀티겜만드는거 첨인데 빡시네 4 아님나 0 10 일 전 405
5666 [프로그래밍] vscode에 이런 설정도 있나? 17 너가전부옳아 0 10 일 전 267
5665 [프로그래밍] 네트워크 관련 관련 질문드립니다 6 그러네요 0 12 일 전 197
5664 [프로그래밍] 언리얼 C++이라고 불리는 이유? 4 nyvux 0 13 일 전 317
5663 [프로그래밍] 코틀린과 swing 기능 관련 다시 질문 4 집에가게해줘 0 13 일 전 150
5662 [프로그래밍] 22대 총선 정보를 모아 볼 수 있는 사이트 2 마포구알짜땅주인 0 14 일 전 302
5661 [프로그래밍] 집에서 공부하는 개붕이 있냐 8 년차html개발자 0 15 일 전 467
5660 [프로그래밍] Mojo 써본사람 있음? 5 너가전부옳아 1 16 일 전 339
5659 [프로그래밍] 코린이 swing 질문좀... 1 집에가게해줘 0 16 일 전 149
5658 [프로그래밍] 파이썬 pillow-avif-plugin 라이브러리 gif->avif 변환 관... 3 부터시작하는이세... 0 16 일 전 121