카테고리:

문자열 및 이진 함수 (일치/비교)

ILIKE

패턴과의 비교를 기반으로 하여 문자열의 일치를 허용합니다. LIKE 함수와 달리, 문자열 일치는 대/소문자를 구분하지 않습니다.

LIKE, ILIKE, RLIKE 모두는 유사한 작업을 수행합니다. 그러나 RLIKE는 LIKE 및 ILIKE에서 사용하는 SQL 패턴 구문 대신 POSIX EXE(Extended Regular Expression) 구문을 사용합니다.

검색 최적화 서비스를 사용하여 이 함수를 호출하는 쿼리의 성능을 향상할 수 있습니다. 자세한 내용은 검색 최적화 서비스 섹션을 참조하십시오.

참고 항목

LIKE , RLIKE

구문

<subject> ILIKE <pattern> [ ESCAPE <escape> ]

ILIKE( <subject> , <pattern> [ , <escape> ] )
Copy

인자

필수:

subject

일치할 주제입니다.

pattern

일치할 패턴입니다.

선택 사항:

escape

와일드카드가 와일드카드로서가 아니라 일반 문자로 해석되어야 함을 나타내기 위해 와일드카드 문자 앞에 삽입된 문자입니다.

사용법 노트

  • SQL 와일드카드는 pattern 에서 지원됩니다.

    • 밑줄(_)은 단일 문자와 일치합니다.

    • 퍼센트 기호(%)는 0개 이상의 문자 시퀀스와 일치합니다.

  • pattern 의 와일드카드는 subject 에 줄 바꿈 문자(\n)를 일치 항목으로서 포함합니다.

  • ILIKE 패턴 일치는 전체 문자열을 포함합니다. 문자열 내의 임의의 위치에서 시퀀스를 일치시키려면 패턴을 % 로 시작하고 끝내십시오.

  • 기본 이스케이프 문자가 없습니다.

  • 백슬래시를 이스케이프 문자로 사용하는 경우, ESCAPE 절에 백슬래시 이스케이프를 지정해야 합니다. 예를 들어, 다음 명령은 이스케이프 문자가 백슬래시임을 지정한 다음, 해당 이스케이프 문자를 사용하여 〈%〉를 리터럴로 검색합니다(이스케이프 문자가 없으면 〈%〉는 와일드카드로 처리됨).

    'SOMETHING%' ILIKE '%\\%%' ESCAPE '\\';
    
    Copy

    이스케이프 문자, 특히 백슬래시를 이스케이프 문자로 사용하는 예는 LIKE 함수의 예 를 참조하십시오.

데이터 정렬 세부 정보

Arguments with collation specifications are currently not supported.

CREATE OR REPLACE TABLE ilike_ex(subject varchar(20));
INSERT INTO ilike_ex VALUES
      ('John  Dddoe'),
      ('Joe   Doe'),
      ('John_down'),
      ('Joe down'),
      (null);
Copy
SELECT * 
    FROM ilike_ex 
    WHERE subject ILIKE '%j%h%do%'
    ORDER BY 1;
+-------------+
| SUBJECT     |
|-------------|
| John  Dddoe |
| John_down   |
+-------------+
Copy
SELECT * 
    FROM ilike_ex 
    WHERE subject ILIKE '%j%h%^_do%' ESCAPE '^'
    ORDER BY 1;
+-----------+
| SUBJECT   |
|-----------|
| John_down |
+-----------+
Copy