'ABC_DEF' 같은 중간에 언더바('_')가 들어간 패턴의 데이터를 검색하고 싶다면 어떻게 해야할까
like 에서 "_" (언더바) 는 한 글자를 의미한다.
그래서 like '%_%' 이렇게 하면 길이가 한자리 이상의 모든 데이터가 나온다.
이러한 경우를 위해 오라클에서는 ESCAPE 문을 제공한다.
where column_a like '%#_DEF' ESCAPE '#' 이렇게 하면 '_DEF' 로 끝나는 데이터들이 추출이 된다.
사용하려는 특수문자 앞에 아무 문자나 넣어주고 뒤에 ESCAPE 라고 써주고 뺄 문자를 명시해주면 된다.
즉 # 을 안쓰고 다른 문자를 써도 결과는 동일하다.
where column_a like '%A_DEF' ESCAPE 'A'
은 위의 쿼리와 결과가 동일하다.
아래는 SYS_ 로 시작하는 문자를 검색하는 간단한 예제이다.
반응형
'생계 > Oracle' 카테고리의 다른 글
오라클 로그인 특수문자 입력 (0) | 2020.01.30 |
---|---|
권한 확인 SQL (0) | 2019.08.29 |
tnsnames.ora 를 통한 DB 접속 테스트 (0) | 2018.11.05 |
오라클 flashback as of timestamp 테스트 (0) | 2018.10.23 |
다른 owner 의 테이블 truncate (0) | 2018.05.31 |