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 38644 게시물 읽기
No. 38644
with NAME as (~~~ 어떻게 사용하나요?
작성자
냥이(cutecat)
작성일
2011-06-29 15:26
조회수
4,022

with as 를사용할려고 하는데요...

자꾸 sql문이 부적합하다고 나오네요...

아래 예문으로 해봤는데...안되요...뭐가 잘못된건가요???

table1이라는 테이블은 생성이 되어있는데 왜 안되는지...저희는 8i를 사용중입니다..

with temp_view as (select a,b,c, from table1 where a>10)
select * from temp_view where b< ( select * from temp_view where c=9)

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

 8i에서 with 구문을 쓸 수 있는지 모르겠으나
작성하신 쿼에서는 두어군데 오류가 있어 보입니다.

line1 : with temp_view as (select a,b,c, from table1 where a>10)
line2 : select * from temp_view where b <
        ( select * from temp_view where c=9)

먼저 line1에서는 select  절에서 c 다음에 컴마(,)가 보이는데
다음에오는 항목이 없습니다.
line2 에서는 in-line view에 문제가 있습니다. 
( select * from temp_view where c=9) 쓰셨는데

여기서도 두군데 정도 오류가 있습니다.
먼저 select 절에 * 가 올 수 없습니다, 
특정 항목을 단정적으로 기술하셔야 하구요.
또한 select 된 결과가 멀티로 나타날 수 있기 때문에
select max(a) 또는 select min(b)  
또는 select from table_view c = 9 and rownum = 1 정도로
리턴 값이 1개만 존재하게 표현하셔야 합니다.
知音(sunnylee72)님이 2011-06-29 17:49에 작성한 댓글입니다.

line2 : select * from temp_view where b <
        ( select * from temp_view where c=9)


 

서브쿼리의 ( select b from temp_view where c = 9)

한개의 컬럼만 존재해야 하는게 맞구요. 서브쿼리의 결과가 멀티로우이면 아래와 같이 any, all로

비교 가능합니다.

select * from temp_view where b < any

( select b from temp_view where c=9);

select * from temp_view where b < all

( select b from temp_view where c=9);

허재영(k26187116)님이 2011-06-30 09:54에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
38647디비링크 오류? ORA-002062 [3]
질문
2011-06-30
9161
38646Flashback Table Feature in Oracle Database 10g
jin_hee
2011-06-30
4098
38645데이타 가져오는 쿼리 도움 부탁드립니다. [1]
종이연필
2011-06-30
4664
38644with NAME as (~~~ 어떻게 사용하나요? [2]
냥이
2011-06-29
4022
38642ORA - 06052 에러 [2]
장마철
2011-06-28
4554
38640오라클 설치 문의 [1]
레이첼
2011-06-26
3175
38639특정 행에 대한 이전 값을 알고 싶습니다. [2]
장윤기
2011-06-25
3948
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다