SQL-LIKE 절

SQL LIKE절은 와일드 카드 연산자를 사용하여 값을 유사한 값과 비교하는 데 사용됩니다. LIKE 연산자와 함께 사용되는 두 개의 와일드 카드가 있습니다.

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

백분율 기호는 0, 1 또는 여러 문자를 나타냅니다. 밑줄은 단일 숫자 또는 문자를 나타냅니다. 이러한 기호는 조합하여 사용할 수 있습니다.

통사론

% 및 _의 기본 구문은 다음과 같습니다.

SELECT FROM table_name
WHERE column LIKE 'XXXX%'

or 

SELECT FROM table_name
WHERE column LIKE '%XXXX%'

or

SELECT FROM table_name
WHERE column LIKE 'XXXX_'

or

SELECT FROM table_name
WHERE column LIKE '_XXXX'

or

SELECT FROM table_name
WHERE column LIKE '_XXXX_'

AND 또는 OR 연산자를 사용하여 N 개의 조건을 결합 할 수 있습니다. 여기서 XXXX는 숫자 또는 문자열 값이 될 수 있습니다.

다음 표에는 '%'및 '_'연산자가있는 다른 LIKE 절을 갖는 WHERE 부분을 보여주는 몇 가지 예가 있습니다.

Sr. 아니. 성명 및 설명
1

WHERE SALARY LIKE '200%'

200으로 시작하는 모든 값을 찾습니다.

2

WHERE SALARY LIKE '%200%'

임의의 위치에 200이있는 모든 값을 찾습니다.

WHERE SALARY LIKE '_00%'

두 번째 및 세 번째 위치에 00이있는 모든 값을 찾습니다.

4

WHERE SALARY LIKE '2_%_%'

2로 시작하고 길이가 3 자 이상인 모든 값을 찾습니다.

5

WHERE SALARY LIKE '%2'

2로 끝나는 모든 값을 찾습니다.

6

WHERE SALARY LIKE '_2%3'

두 번째 위치에 2가 있고 3으로 끝나는 값을 찾습니다.

7

WHERE SALARY LIKE '2___3'

2로 시작하고 3으로 끝나는 5 자리 숫자의 값을 찾습니다.

실제 예를 들어, 아래와 같이 레코드가있는 CUSTOMERS 테이블을 고려하십시오.

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+

다음은 SALARY가 200으로 시작하는 CUSTOMERS 테이블의 모든 레코드를 표시하는 예입니다.

SQL> SELECT * FROM CUSTOMERS
WHERE SALARY LIKE '200%';

이것은 다음 결과를 생성합니다-

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
+----+----------+-----+-----------+----------+