반응형
ESCAPE
- LIKE 연산으로 '%' 나 '_' 가 포함된 문자를 검색하고자 할때 사용된다.
- '%'나 '_' 앞에 ESCAPE로 특수문자를 지정하면 검색할 수 있다.
- 특수문자는 아무거나 상관없이 사용 가능하다.
특수문자를 지정한다는게 무슨 의미일까?
일단 일반적으로 LIKE 구문을 사용하는것 처럼 사용해보면 아래와 같다.
SELECT name FROM oracleStudy WHERE name like '%_%'; -- 하늘_바람,높새%바람,피카츄,라이츄
SELECT name FROM oracleStudy WHERE name like '%%%'; -- 하늘_바람,높새%바람,피카츄,라이츄
'%' 나 '_' 가 포함된 문자열만 검색하고자 했는데 역시 인식을 하지 못하는 상황이 발생한다.
이럴때 사용하는게 ESCAPE 구문인데, 사용방법은 매우 간단하다.
SELECT name FROM oracleStudy WHERE name like '%N_%' ESCAPE 'N'; -- 하늘_바람
SELECT name FROM oracleStudy WHERE name like '%G%%' ESCAPE 'G'; -- 높새%바람
처음 설명에서 ESCAPE 구문을 사용할 때 '%'나 '_' 앞에 아무 문자나 상관없다고 하였는데,
위 예제를 보면 ESCAPE에 사용할 문자로 'N' 과 'G'를 사용하였다.
구문 마지막에 ESCAPE 에 사용할 문자열만 지정해주면 '_' 나 '%' 를 검색에 사용할 수 있게 도와준다.
반응형
댓글