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
운영게시판
최근게시물
DB2 Q&A 3413 게시물 읽기
No. 3413
db2 쿼리 문의요
작성자
db2궁금
작성일
2015-05-28 11:07
조회수
5,523

쿼리1를 실행시키면 ( )안에 있는 a.col01을 인식하지 못하는 에러가 발생합니다.

하지만 "(select..." 앞에 "table(select..." 라고 쓰면 a.col01 을 인식하며 에러가 발생하지 않습니다.

table 은 table(snapshot_tab_cfg('',-2)) 같은 경우나 table(values(1),(2),(3),...) t(a) 와 같은 경우에 사용하는것은 많이 보았으나 위와 같은 기능이 존재하는지는 몰랐습니다.

어떠한 이유에서 가능한지 알수 있을까요?

 

<쿼리1 에러내용>

SQL0204N "A.COL01" is an undefined name. SQLSTATE=42704

 

쿼리1) 에러발생

db2 "select *
from tab01 a
inner join (select col01, col02, col03
from tab02 b
where a.col01 = b.col01
) as c
on a.col01 = c.col01
with ur"

 

쿼리2) 에러없음

db2 "select a.*
from tab01 a
inner join table(select col01, col02, col03
from tab02 b
where a.col01 = b.col01
) as c
on a.col01 = c.col01
with ur"

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

첫번째 쿼리를 보시면 inner join 뒤 괄호안 서브쿼리의 where 절에 a.col01 = b.col01 컬럼이 있습니다.

b(tab02) 테이블과 앞서 선언한 a(tab01)과의 조인이 발생하는데

FROM절 내에서 이렇게 참조(조인) 하려면 TABLE 키워드를 사용합니다. (또는 LATERAL)

 

아래 문서에서 TABLE, LATERAL로 찾아보시면 설명이 있습니다.

http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.sql.ref.doc/doc/r0000875.html?cp=SSEPGG_9.7.0%2F2-10-5-1&lang=en

정상규(pajama)님이 2015-05-28 15:44에 작성한 댓글입니다.
이 댓글은 2015-05-28 15:55에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
3417[ORACLE -> db2 MIGRATION] CREATE PACKAGE 생성문의 [1]
dbghktjr
2015-08-03
5397
3415한글깨짐현상
JJYSDF
2015-06-22
4123
3414DB2 for i Series에서 DB2 for LUW 데이터 마이그레이션 문의
db2
2015-06-16
3835
3413db2 쿼리 문의요 [1]
db2궁금
2015-05-28
5523
3412쿼리문 실행하면 4분이 걸립니다. [1]
궁그미
2015-05-28
4351
3411DB2 쿼리 질문
박상수
2015-04-20
4222
3410서브쿼리 -> 조인으로 변환 질문 [1]
dbghktjr
2015-04-07
4342
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다