카테고리 없음
오라클 LIKE 와일드카드
JJ에러노트
2023. 12. 29. 08:41
오늘은 DB SELECT문을 짜다가 특정 컬럼에서 5자리로 이루어진 데이터를 찾다가 LIKE에 대해서 포스팅하게 되었다.
LIKE 검색은 오라클이나 다른 DB에서도 사용 방법이 같은 것 같다.
일단 LIKE는 WHERE조건에서 쓰이는데 정확한 데이터 전체가 생각이 안나거나 1로 시작하는 데이터를 찾거나 등 특정 문자가 포함된 데이터를 검색할때 주로 사용한다.
대한민국만세 라는 데이터를 컬럼1에서 찾아보는걸로 예를 들어보겠다.
--앞에 %를 붙여 검색
--컬럼1에서 앞에 지정한 데이터가 붙어있거나 없거나 만세로 끝나는 데이터를 찾는다.
SELECT *
FROM 테이블
WHERE 컬럼1 LIKE '%만세'
;
--뒤에 %를 붙여 검색
--컬럼1에서 뒤에 지정한 데이터가 붙어있거나 없거나 대한민국으로 시작하는 데이터를 찾는다.
SELECT *
FROM 테이블
WHERE 컬럼1 LIKE '대한민국%'
;
--중간에 %를 붙여 검색
--컬럼1에서 중간에 지정힌 데이터가 붙어있거나 없거나 민국이 포함된 데이터를 찾는다.
SELECT *
FROM 테이블
WHERE 컬럼1 LIKE '%민국%'
;
그리고 _를 이용해 몇자리 문자를 찾을지 정할수도 있다.
--대한민국으로 시작하며 뒤에 2글자가 있는 데이터 검색
SELECT *
FROM 테이블
WHERE 컬럼 LIKE '대한민국__'
;
--대한OO만세, 중간 2글자 찾기
SELECT *
FROM 테이블
WHERE 컬럼 LIKE '대한__만세'
;
--대한민국OO, 끝 2글자 찾기
SELECT *
FROM 테이블
WHERE 컬럼 LIKE '대한민국__'
;
위와 같이 찾고싶은 데이터 길이를 정확하게 알고 있다면 _(언더바) 하나당 길이 1씩 검색이 가능하며, 가끔 몇자리수의 데이터를 찾을때 유용하게 사용하곤 한다.