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
운영게시판
최근게시물
Oracle Q&A 41178 게시물 읽기
No. 41178
테이블 다중 컬럼 join
작성자
염진호(bboyjino)
작성일
2016-06-17 17:53
조회수
8,293

create table report(

acode,

bcode,

ccode,

.,

.

)

 

create table code (

xcode

codestr,

.

)

---------------------------------------------------------

select acode from report a, code x where a.acode=x.xcode

select acode from report a, code x where a.bcode=x.xcode

select acode from report a, code x where a.ccode=x.xcode

---------------------------------------------------------

 

select aa.acode, aa.astr, bb.bcode, bb.codestr as bstr from (

select acode, x.codestr as astr

select acode from report a, code x

where a.acode = x.xcode

)aa, x.code bb

where aa.bcode=bb.xcode

.

.

.

이렇게 해야 하는건가요..

좀 편하게 할수 있는 방법이 있을런지요..

조언좀 부탁 드릴께요

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

-- 1. 조인(빈코드가 없을 때)
SELECT m.acode, a.codestr astr
     , m.bcode, b.codestr bstr
     , m.ccode, c.codestr cstr
  FROM report m
     , code c1
     , code c2
     , code c3
 WHERE m.acode = a.xcode
   AND m.bcode = b.xcode
   AND m.ccode = c.xcode
;


-- 2. 아우터 조인(빈코드가 있을 때)
SELECT m.acode, a.codestr astr
     , m.bcode, b.codestr bstr
     , m.ccode, c.codestr cstr
  FROM report m
     , code c1
     , code c2
     , code c3
 WHERE m.acode = a.xcode(+)
   AND m.bcode = b.xcode(+)
   AND m.ccode = c.xcode(+)
;


-- 3. 스칼라서브쿼리
SELECT m.acode, (SELECT codestr FROM code WHERE xcode = m.acode) astr
     , m.bcode, (SELECT codestr FROM code WHERE xcode = m.bcode) bstr
     , m.ccode, (SELECT codestr FROM code WHERE xcode = m.ccode) cstr
  FROM report m
;

마농(manon94)님이 2016-06-20 08:55에 작성한 댓글입니다.

아,, 이렇게 간단히 되는거였군요..

감사합니다. ^^

염진호(bboyjino)님이 2016-06-20 09:52에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41181lock 걸린 세션 종료 후 데이터 삭제되는 현상
신재철
2016-06-21
8266
41180특정문자(대,소) 문자열만 자르기 [1]
김주환
2016-06-21
8090
41179user object type 에서 한글깨짐 문의드립니다.
진랑
2016-06-20
8301
41178테이블 다중 컬럼 join [2]
염진호
2016-06-17
8293
41177Procedure 에서 있으면 UPDATE, 없으면 INSERT 구현 시 [1]
박소연
2016-06-17
8677
41176안녕하세요. 문자 보내는 테이블 컬럼값에 시간을 넣는 부분에 관해서 문의드려요 [2]
도토리
2016-06-16
8415
41175데이터 타입 문제 [1]
도와주세요
2016-06-16
8734
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.024초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다