문자열에 포함되어 있는 값을 추출할 때 사용하는 오라클 like 사용법에 대해서 알아보겠습니다.
DB를 사용하면서 가장 많이 사용하는 절은 select인데요.
select 절에 like를 사용하므로써 해당 문자열이 포함되어 있는 행(row)를 추출할 수 있습니다.
또한, 문자열에 %나 _가 포함되어 있는 문자열을 추출할때는 escape를 써야 하는데요 그 방법에 대해서 설명 드리겠습니다.
1. like 문
SELECT [컬럼명] FROM [테이블명] WHERE [컬럼명] LIKE '%[문자열]%'
위와 같이 WHERE 절에 LIKE문을 써서 해당 문자열을 포함하는 컬럼명이 있을 경우 해당 데이터를 모두 가져오게 됩니다.
또한 %는 앞뒤로 지정할 수 있는데 앞에 쓰면 해당 문자로 끝나는 것을 뜻하며 %를 뒤로 놓으면 해당 문자열로 시작하는 데이터를 가져오게 됩니다.
앞뒤로 다 쓰면 해당 문자열로 시작하거나 끝나거나 포함되어 있는 컬럼의 데이터을 가져옵니다.
2. escape로 %, _ 추출 방법
LIKE를 이용하여 컬럼을 추출할 때 &나 _ 문자열(와일드카드라 지칭함)이 포함되어 있을 경우 일반적인 LIKE를 써서는 수행할 수 없습니다.
따라서 ESCAPE를 써써 지정한 문자 다음에 오는 와일드카드를 일반 문자열로 취급하여 해당 기능을 수행해야 합니다.
다음과 같이 JOB이란 컬럼에 %와 _가 포함되어 있는데 이를 한번 추출해 보겠습니다.
일반적인 방법으로 수행한 모습인데요.
해당 컬럼은 SELECT 하지 못하였고 모든 데이터를 가져오고 말았습니다.
이렇게 ESCAPE를 통해 느낌표(!)를 지정하고 느낌표 다음에 오는 와일드카드 쓴 형태인데요.
이렇게 와일드카드와 like 문을 통해 특수문자를 가지고 있는 컬럼을 SELECT 할 수 있습니다.
답글 남기기