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 27212 게시물 읽기
No. 27212
not exists select 'X' 가 왜 쓰이는 건가요???
작성자
이영신
작성일
2006-07-06 10:15
조회수
8,667

select * from emp a
where not exists ( select 'X'
from emp2 b
where a.empno=b.empno);

 

 

이런식으로 사용할때 당췌 왜 not exists( select 'X'....)가 쓰이는 건지 모르겠습니다.

 

 

 

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

select * from emp a
where not exists ( select 'X'
from emp2 b
where a.empno=b.empno);

 

수행 순서를 먼저 보세요.

 

where절의 exists 문의 구조상 a.empno를 참조하고 있기 때문에 emp 테이블을 선행으로 핸들링하고 나온 데이타에 대해서 건건이 emp2 테이블에서 검증을 수행합니다.

 

exists는 존재여부를 확인하기 위한것이고 하나라도 존재하면 가부여부만을 리턴합니다.

 

존재하면 그 값이 컬럼값이던 'X'던 'x'던 'a'던 상관없이 존재한다는 사실을 확인할 뿐이죠.

 

'X'값은 단순히 저 쿼리를 만들었던 사람이 선호한 상수일뿐입니다.

임재흥(임재흥)님이 2006-07-06 11:01에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
27215데이터 조회시 문제점이 생겼어요..... [1]
정명규
2006-07-06
1106
27214isqlplus 실행이 안됩니다. [1]
딸기파우더
2006-07-06
850
27213TOAD 한글 메뉴얼 [5]
김기홍
2006-07-06
2871
27212not exists select 'X' 가 왜 쓰이는 건가요??? [1]
이영신
2006-07-06
8667
27211deadlock 걸렸을때 ? [1]
초보dba
2006-07-06
2779
27209CLOB--->Varchar2(4000) 변경후 문제.. [4]
Wenzie
2006-07-05
7751
27208cost [2]
조명구
2006-07-05
1088
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.025초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다