The SQL LIKE Operator
WHERE절에서 특별한 패턴을 찾을 때 사용된다.
LIKE연산자에는 두 개의 와일드카드(임의 문자기호)가 사용됨.
- % : 0, 1 또는 여러개의 문자들
- _ : 한 개의 문자
Note: MS Access에서는 언더스코어(_) 대신에 물음표(?)를 사용함
퍼센트 표시(%)와 언더스코어(_)는 동시에 사용될 수 있다.
LIKE Syntax
SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
Tip: AND 또는 OR연산자로 조건을 추가할 수 있다.
LIKE Operator | Description |
---|---|
WHERE CustomerName LIKE ‘a%’ | a로 시작하는 모든 값 |
WHERE CustomerName LIKE ‘%a’ | a로 끝나는 모든 값 |
WHERE CustomerName LIKE ‘%or%’ | or이 어떤 위치에라도 갖고 있는 값 |
WHERE CustomerName LIKE ‘_r%’ | 두번째 위치에 r이 존재하는 값 |
WHERE CustomerName LIKE ‘a_%_%’ | a로 시작하고 적어도 3글자인 값 |
WHERE ContactName LIKE ‘a%o’ | a로 시작하고 o로 끝나는 값 |
SQL LIKE Examples
- a로 시작하는 값 찾기
SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';
- a로 끝나는 값 찾기
SELECT * FROM Customers
WHERE CustomerName LIKE '%a';
- 어떤 위치라도 or가 들어간 값
SELECT * FROM Customers
WHERE CustomerName LIKE '%or%';
- 두 번째 글자가 r인 경우
SELECT * FROM Customers
WHERE CustomerName LIKE '_r%';
- a로 시작하는 세 글자 이상의 값
SELECT * FROM Customers
WHERE CustomerName LIKE 'a_%_%';
- a로 시작하고 o로 끝나는 값
SELECT * FROM Customers
WHERE ContactName LIKE 'a%o';
- a로 시작하지 않는 값
SELECT * FROM Customers
WHERE CustomerName NOT LIKE 'a%';
Comments