database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 3848 게시물 읽기
No. 3848
3개 테이블 연결 쿼리 질문입니다.
작성자
Wenzie
작성일
2007-11-02 11:53
조회수
3,391

Table_A

Table_B

Table_C

 

이렇게 3개 테이블이 있습니다.

 

Table_A 에 SEQ값이 고유값입니다.이테이블에 데이터는 항상 있습니다.

 

Table_B에 고유값은 SEQ값이구요 Table_A와 연결되는건 BDSeq값입니다.

Table_C에 고유값은 SEQ값이구요 Table_A와 연결되는건 BDSeq값입니다.

 

이 테이블 3개를 연결하는데요

 

Table_B나 Table_C가 데이터가 없을 수 있습니다. 둘중하나가 없을 수도있고 둘다 없다면 데이터가 안나와야겠죠..

 

일단 만들기는 했는데 Table_B나 Table_C 둘중 하나에 데이터가 없어서 빈 데이터로 나오네요..-_-;

 

우찌해야 할런지..

 

 

Select Top 5 Seq,ACode,Al_Text,A_Text

 

 

From  Table_A A ,

 

(select BDSeq,Al_Text

 

from  Table_B  where      isResult = 'N'  ) B

 

,(select BDSeq, A_Text

 

 

 from   Table_C  where     alram ='Y'  ) C

 

 

Where   A.seq=B.BDseq and  A.seq=C.BDseq

 

이런식으로 했는데 Table_C가 데이터가 없어서 빈 데이터가 나오더라구요.

 

답변 부탁 드립니다.

이 글에 대한 댓글이 총 1건 있습니다.

SELECT TOP 5 A.Seq, A.ACode, B.AI_Text, C.A_Text
FROM Table_A A
LEFT OUTER JOIN (SELECT BDSeq, AI_Text FROM Table_B WHERE isResult = 'N') B ON A.Seq = B.BDSeq
LEFT OUTER JOIN (SELECT BDSeq, A_Text FROM Table_C WHERE alram = 'Y') C ON A.Seq = C.BDSeq
--WHERE B.AI_Text IS NOT NULL AND C.A_Text IS NOT NULL

LEFT OUTER JOIN 하면 되는데 조건문을 빼면 두 테이블에 값이 없어도 나오겠네요..

='ㅅ'=님이 2007-11-03 10:57에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
3851insert하면서 입력된 row의 데이타를 출력하는 방법좀 알려주세요 [1]
유지현
2007-11-05
3161
3850한글을 2Byte를 1Byte 씩 ASCII로 읽는 방법 [1]
N3O
2007-11-04
4948
3849열데이터를 행데이터로 넣고 싶은데요. [2]
새신랑
2007-11-02
3442
38483개 테이블 연결 쿼리 질문입니다. [1]
Wenzie
2007-11-02
3391
3847ORDER BY 쿼리문에서 select 시 top 있고 없고 차이가 생기는데.. [1]
김태형
2007-11-01
3684
3846대용량 DB의 페이징 쿼리문과 인덱스에 대해 궁금합니다. [1]
11월
2007-11-01
3767
3845오라클 Crate Table .. AS Select ... 문과 같은것 있나요? [3]
jetsetty
2007-11-01
3534
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.033초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다