SQL 데이터 조회와 필터링 : LIKE 연산자


LIKE 연산자

이 학습은 패스트캠퍼스의 올인원 패키지 : 모두를 위한 SQL/DB 강의를 듣고 복습하는 내용입니다.

img

LIKE 연산자 문법

특정 집합을 추력 시 출력하는 행의 수를 한정하는 역할을 한다. 부분 범위 처리시 사용된다.


● LIKE

img

>> COLUNM_NAME 컬럼의 값이 특정 패턴과 유사한 집합을 출력한다.

● NOT LIKE

img

>> COLUNM_NAME 컬럼의 값이 특정 패턴과 유사하지 않은 집합을 출력한다.

## 특정 패턴에서 ‘%’ 는 어떤 문자 혹은 문자열이든지 매칭 되었다고 판단한다.

## 특정 패턴에서 ‘_‘는 한 개의 문자가 어떤 문자이든지 매칭 되었다고 판단한다.


LIKE 연산자 실습

● 기본 실습

- 쿼리문

SELECT
      FIRST_NAME
    , LAST_NAME
 FROM
      CUSTOMER
WHERE
    FIRST_NAME LIKE 'Jen%';

- 실행 결과

img

>> FIRST_NAME이 ‘Jen’ 으로 시작하는 집합을 출력한다.

​ 즉, ‘Jen’ 이후의 문자 혹은 문자열은 모두 매칭된다.

● % 와 _ 예시

- 쿼리문

SELECT
	    'FOO' LIKE 'FOO'
	  , 'FOO' LIKE 'F%'
      , 'FOO' LIKE '_O_'
	  , 'BAR' LIKE 'B_'
;

- 실행결과

img

>> [v] 가 True를 의미한다.

>> ‘FOO’는 ‘FOO’ 이므로 참이다.

​ ‘F%’는 ‘F’로 시작하면 모두 참이다.

​ ‘O‘는 3자리 문자열이고 가운데 무너자가 ‘O’라면 참이다.

​ ‘B_‘는 2자리 문자열이고 ‘B’로 시작하기만 하면 두번째 문자는 무엇이든 간에 참이다. 하지만 ‘BAR’은 3자리 이므로 거짓이다.

● 앞뒤에 % 사용

- 쿼리문

SELECT
      FIRST_NAME
    , LAST_NAME
 FROM
      CUSTOMER
WHERE
    FIRST_NAME LIKE '%er%';

- 실행 결과

img

>> FIRST_NAME에 ‘er’이 존재하는 모든 집합을 출력한다.

● 앞에 _ , 뒤에 % 사용

- 쿼리문

   SELECT
      FIRST_NAME
    , LAST_NAME
 FROM
      CUSTOMER
WHERE
    FIRST_NAME LIKE '_her%';

- 실행 결과

img

>> 첫번째 문자가 어떠한 문자로 시작 가능하지만 그 다음이 ‘her이어야 하고 그 다음에는

​ 어떤 문자 혹은 문자열이 이어도 상관없는 집합이 출력된다.

● NOT LIKE 연산자

- 조건문

   SELECT
      FIRST_NAME
    , LAST_NAME
 FROM
      CUSTOMER
WHERE
    FIRST_NAME NOT LIKE 'Jen%';

- 실행 결과

img

>> Jen으로 시작하지 않는 것들만 추출한다.


© 2021. All rights reserved.

----------Powered by Hydejack----------

kyusang Hwang