PostgreSQL LIKE, Not Like, 와일드카드(%, _ ) 예


PostgreSQL LIKE 연산자는 와일드카드를 사용하여 텍스트 값을 패턴과 일치시키는 데 도움이 됩니다. 검색식을 패턴식과 일치시키는 것이 가능합니다.

일치하는 경우 LIKE 연산자는 true를 반환합니다. LIKE 연산자를 사용하면 SELECT, UPDATE, INSERT 또는 DELETE 문의 WHERE 절에 와일드카드를 사용할 수 있습니다.

와일드 카드

함께 사용할 수 있는 와일드카드는 XNUMX개뿐입니다.

  • 백분율 기호(%)
  • 밑줄(_)

퍼센트 기호(%)는 XNUMX, XNUMX 또는 다수의 문자나 숫자를 나타내는 데 사용됩니다.

밑줄 와일드카드(_)는 하나의 문자나 숫자를 나타내는 데 사용됩니다. 이러한 기호는 결합될 수도 있습니다. LIKE 연산자를 이 두 기호와 함께 사용하지 않으면 같음 연산자처럼 작동합니다.

통사론

LIKE 연산자의 구문은 다음과 같습니다.

expression LIKE pattern [ ESCAPE 'escape-character' ]

표현식은 열이나 필드와 같은 문자 표현식입니다.

패턴은 패턴 매칭을 통한 문자 표현입니다.

이스케이프 문자는 선택적 매개변수입니다. % 및 _와 같은 와일드카드 문자의 리터럴 인스턴스를 테스트할 수 있습니다. 제공되지 않으면 \가 이스케이프 문자로 사용됩니다.

% 와일드카드 사용

앞서 언급했듯이 % 기호는 XNUMX개, 하나 이상의 문자 또는 숫자와 일치합니다. 다음을 고려하십시오.wing 표:

도서:

% 와일드카드 사용

우리는 "Lear…"와 같은 이름의 책이 그 결과를 얻기를 원합니다.wing 명령:

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

그러면 다음 내용이 반환됩니다.wing:

% 와일드카드 사용

책이 발견되었습니다.

이름이 "by"인 책을 검색해 보겠습니다.

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

그러면 다음 내용이 반환됩니다.wing:

% 와일드카드 사용

_ 와일드카드 사용

앞서 언급했듯이 _ 기호는 하나의 문자 또는 숫자를 나타냅니다. 아래와 같이 사용할 수 있습니다.

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

이것은 다음을 반환합니다wing:

_ 와일드카드 사용

다음은 또 다른 예입니다.

SELECT *
FROM
   Book
WHERE
   name LIKE '%Beginner_';

이것은 다음을 반환합니다wing:

_ 와일드카드 사용

NOT 연산자 사용

LIKE 연산자가 NOT 연산자와 결합되면 검색 패턴과 일치하지 않는 행이 반환됩니다. 예를 들어, 이름이 "post"로 시작하지 않는 책을 보려면 다음을 실행하면 됩니다.wing 명령:

SELECT *
FROM
   Book
WHERE
  name NOT LIKE 'Post%';

이것은 다음을 반환합니다wing:

NOT 연산자 사용

단 한 권의 책만이 검색 조건을 충족했습니다. "Made"라는 단어가 없는 책 이름의 목록을 살펴보겠습니다.

SELECT *
FROM
   Book
WHERE
  name NOT LIKE '%Made%';

이것은 다음을 반환합니다wing:

NOT 연산자 사용

3개의 행이 검색 조건을 충족했습니다.

pgAdmin 사용

이제 pgAdmin을 사용하여 작업을 수행하는 방법을 살펴보겠습니다.

% 와일드카드 사용

단계 1) pgAdmin 계정에 로그인하세요.

단계 2)

  1. 왼쪽 탐색 모음에서 데이터베이스를 클릭합니다.
  2. 데모를 클릭하세요.

% 와일드카드와 함께 pgAdmin 사용

단계 3) 쿼리 편집기에 쿼리를 입력합니다.

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

단계 4) 실행 버튼을 클릭하세요.

% 와일드카드와 함께 pgAdmin 사용

그것은 follo를 반환해야합니다wing:

% 와일드카드와 함께 pgAdmin 사용

이름이 'by'인 책을 검색하려면 다음 단계를 따르세요.

단계 1) 팔로우를 입력하세요wing 쿼리 편집기의 명령:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

단계 2) 실행 버튼을 클릭하세요.

% 와일드카드와 함께 pgAdmin 사용

그것은 follo를 반환해야합니다wing:

% 와일드카드와 함께 pgAdmin 사용

_ 와일드카드 사용

단계 1) pgAdmin 계정에 로그인하세요.

단계 2)

  1. 왼쪽 탐색 모음에서 데이터베이스를 클릭합니다.
  2. 데모를 클릭하세요.

_ 와일드카드와 함께 pgAdmin 사용

단계 3) 쿼리 편집기에 쿼리를 입력합니다.

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

단계 4) 실행 버튼을 클릭하세요.

_ 와일드카드와 함께 pgAdmin 사용

그것은 follo를 반환해야합니다wing:

_ 와일드카드와 함께 pgAdmin 사용

단계 5) 두 번째 예제를 실행하려면 다음을 수행하십시오.

  1. 팔로우를 입력하세요wing 쿼리 편집기에서 쿼리:
    SELECT *
    FROM
       Book
    WHERE
       name LIKE '%Beginner_';
    
  2. 실행 버튼을 클릭하세요.

_ 와일드카드와 함께 pgAdmin 사용

그것은 follo를 반환해야합니다wing:

_ 와일드카드와 함께 pgAdmin 사용

NOT 연산자 사용

단계 1) pgAdmin 계정에 로그인하세요.

단계 2)

  1. 왼쪽 탐색 모음에서 데이터베이스를 클릭합니다.
  2. 데모를 클릭하세요.

pgAdmin에서 NOT 연산자 사용

단계 3) 이름이 'Post'로 시작하지 않는 모든 책을 보려면 쿼리 편집기에 쿼리를 입력하세요.

SELECT *
FROM
   Book
WHERE
  name NOT LIKE 'Post%';

단계 4) 실행 버튼을 클릭하세요.

pgAdmin에서 NOT 연산자 사용

그것은 follo를 반환해야합니다wing:

pgAdmin에서 NOT 연산자 사용

pgAdmin에서 NOT 연산자 사용

이름에 'Made'라는 단어가 없는 도서 목록을 보려면 다음 단계를 따르세요.

단계 1) 팔로우를 입력하세요wing 쿼리 편집기에서 쿼리:

SELECT *
FROM
   Book
WHERE
  name NOT LIKE '%Made%';

단계 2) 실행 버튼을 클릭하세요.

pgAdmin에서 NOT 연산자 사용

그것은 follo를 반환해야합니다wing:

pgAdmin에서 NOT 연산자 사용

요약

  • PostgreSQL LIKE는 와일드카드를 사용하여 텍스트 값을 패턴과 일치시키는 데 사용됩니다.
  • LIKE 절을 사용하면 와일드카드를 사용할 수 있습니다. SELECT, UPDATE, INSERT 또는 DELETE 문.
  • % 와일드카드는 하나 이상의 값과 일치합니다. 값은 숫자 또는 문자일 수 있습니다.
  • _ 와일드카드는 정확히 하나의 값과 일치합니다. 값은 문자 또는 숫자일 수 있습니다.
  • LIKE 연산자를 NOT 연산자와 결합하여 검색 패턴과 일치하지 않는 행을 반환할 수 있습니다.

이 튜토리얼에 사용된 데이터베이스 다운로드