`LIKE` 연산자는 SQL 쿼리에서 문자열 패턴 매칭을 수행하기 위해 사용되는 연산자입니다. `LIKE` 연산자를 사용하여 특정 패턴과 일치하는 문자열을 검색하거나 필터링할 수 있습니다. `LIKE` 연산자는 다음 두 개의 와일드카드 문자와 함께 사용됩니다.
1. `%` (퍼센트 기호): 이것은 어떤 문자열도 될 수 있는 임의의 문자열을 나타내며, 0개 이상의 문자를 나타냅니다.
2. `_` 임의로 글자가 있다고 가정하는 기호입니다
형식 : where 컬럼명 like '검색문자+와일드문자'
-- 사원들 중 김씨성을 가진 모든 사원 조회
SELECT * FROM employee WHERE employee.emp_name LIKE '김%'
-- 폰번호가 010으로 시작하는 영업부의 모든 사원 조회
SELECT * FROM employee WHERE employee.phone LIKE '010%'
-- 이메일 주소 두번째자리 'a' 가 들어가는 사원 조회
SELECT * FROM employee WHERE email LIKE '_a%'
-- 이메일 아이디가 4자리인 사원 조회
SELECT * FROM employee WHERE email LIKE '____@%'
-- 사원명에 삼이 들어가는 사원
SELECT * FROM employee WHERE emp_name LIKE '%삼%'
추가설명
가정: 다음 예시에서 우리는 "products" 테이블을 사용하여 제품 목록을 검색하는 상황을 가정합니다. "products" 테이블은 다음과 같은 구조를 갖는다고 가정합니다.
+----+--------------+
| id | product_name |
+----+--------------+
| 1 | Apple |
| 2 | Banana |
| 3 | Orange |
| 4 | Pineapple |
| 5 | Strawberry |
+----+--------------+
"Apple"로 시작하는 제품 찾기:
SELECT * FROM products WHERE product_name LIKE 'Apple%';
이 쿼리는 "product_name" 열에서 "Apple"로 시작하는 모든 제품을 반환합니다. 결과로는 "Apple"이라는 제품만 반환됩니다.
"Berry"를 포함하는 제품 찾기:
SELECT * FROM products WHERE product_name LIKE '%Berry%';
이 쿼리는 "product_name" 열에서 "Berry"를 포함하는 모든 제품을 반환합니다. 결과로는 "Strawberry"가 반환됩니다.
두 번째 문자가 "p"인 제품 찾기:
SELECT * FROM products WHERE product_name LIKE '_p%';
이 쿼리는 "product_name" 열에서 두 번째 문자가 "p"로 시작하는 모든 제품을 반환합니다. 결과로는 "Pineapple"이 반환됩니다.
"Banana"로 끝나는 제품 찾기:
SELECT * FROM products WHERE product_name LIKE '%Banana';
이 쿼리는 "product_name" 열에서 "Banana"로 끝나는 모든 제품을 반환합니다. 결과로는 "Banana"이 반환됩니다.
임의의 문자열 찾기:
SELECT * FROM products WHERE product_name LIKE '%a%';
이 쿼리는 "product_name" 열에서 어디에서나 "a" 문자를 포함하는 모든 제품을 반환합니다. 결과로는 "Apple," "Banana," "Orange," "Pineapple," "Strawberry"이 모두 반환됩니다.
LIKE 연산자는 문자열 패턴을 기반으로 데이터를 검색할 때 유용하며, 여러 다양한 검색 조건에 맞는 데이터를 쉽게 추출할 수 있습니다.
'프로그래밍 > MYSQL' 카테고리의 다른 글
mysql sum() 합계 구하기 ,avg()평균 값 구하기 (1) | 2023.10.13 |
---|---|
mysql 문자열 결합 : concat() 함수 (0) | 2023.10.12 |
mysql or 논리 연산자 : in (값1,값2) (0) | 2023.10.12 |
mySQL 범위 조회 between ~ and (0) | 2023.10.12 |
SQL SELECT 사용 예제 (1) | 2023.10.11 |