LIKE연산으로 '%'나 '_'가 들어간 문자를 검색하기 위해서는 ESCAPE를 사용해야 합니다.
'_'나 '%'앞에 ESCAPE로 특수 문자를 지정하면 검색할 수 있습니다.
1. '_' 가 있는 문자 검색
SQL>SELECT loc
FROM dept
WHERE loc like '%#_%' ESCAPE '#';
LOC
-------------
NEW_YORK
위 문장에서 #대신 다른 문자가 와도 됩니다.
(아래같이 @같은 특수 문자나, A같은 아파벳이나, 9같은 숫자가 와도 똑같은 결과가 나오네요)
아래의 결과들을 한번 비교해 보시기 바랍니다.
SQL> SELECT loc
FROM dept
WHERE loc like '%N%@_%' ESCAPE '@'
LOC
-------------
NEW_YORK
SQL>SELECT loc
FROM dept
WHERE loc like '%_%';
LOC
-----------
NEW_YORK
DALLAS
CHICAGO
BOSTON
2, '%' 가 있는 문자 검색
'%'가 있는 문자도 '_'가 있는 문자 검색과 동일 합니다.
SQL>SELECT loc
FROM dept
WHERE loc like '%@%%' ESCAPE '@';
LOC
-------------
BOS%TON
SQL>SELECT loc
FROM dept
WHERE loc like '%%%';
LOC
-------------
NEW_YORK
DALLAS
CHICAGO
BOS%TON
'DataBase > Oracle' 카테고리의 다른 글
NVL2 함수의 사용 (0) | 2008.08.08 |
---|---|
LONG TYPE을 LOB TYPE으로 CONVERSION하는 방법(TO_LOB) (0) | 2008.08.08 |
[펌]IMPORT (0) | 2008.08.08 |
[펌]EXPORT (0) | 2008.08.08 |
[펌]EXECUTE IMMEDIATE를 이용한 Dynamic SQL (0) | 2008.08.08 |