본문 바로가기

PostgreSQL

PostgreSQL | LIKE and iLIKE 특정 문자열이나 비슷한 패턴의 정보 뽑아내기

만약 person테이블의 email 칼럼 중 '. com '으로 끝나는 레코드들을 뽑아낸다고 가정하면 아래처럼 쓸 수 있다

 

SELECT * FROM person WHERE email LIKE '%. com';

** (%) 그리고 (_)는 wildcard이다. *(별표)와 유사

 

SELECT * FROM person WHERE email LIKE '% naver.%';

예를 들어 위의 방식으로 쓰면 example@naver.com, example@naver.kr, example@naver.uk과 같이 naver. 을 포함한 모든 email 레코드를 뽑을 수 있다.

 

 

_(언더스코어)는 또 다른 wildcard로써 _하나당 하나의 문자를 나타낸다

SELECT * FROM person WHERE email LIKE '________@%';

총 8번의 _를쓰면 이메일 앞자리가 총 8자리인 것들만 추려서 뽑아낼 수 있다

 

LIKE는 case sensitive이지만 ILIKE는 대문자 소문자 상관없이 필터 한다