본문 바로가기

SQL/SQL Tutorial

19.SQL 와일드 카드

19.SQL 와일드 카드

와일드 카드는 문자엘에서 하나 이상의 문자를 대체하는데 사용됩니다.

와일드카드 문자는 LIKE 연산자와 함께 사용됩니다.

LIKE 연산자는 WHERE 절에서 지정된 패턴을 검색하는데 사용됩니다,

 

문자'a'로 시작하는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE 'a%';

 

와일드카드 문자들

% : 0개 이상의 문자를 나타냅니다.

_ : 단일 문자를 나타냅니다.

*[] : 대괄호 안의 단일 문자를 나타냅니다.

*^ : 괄호안에 없는 모든 문자를 나타냅니다.

*- : 지정된 범위 내의 단일 문자를 나타냅니다.

**{} : 이스케이프된 문자를 나타냅니다.

 

* PostgreSQL 및 MySQL 데이터베이스에서는 지원되지 않습니다.

** Oracle 데이터베이스서만 지원됩니다.

 

% 와일드카드 사용

% 와일드 카드는 모든 문자 수를 나타내며 심지어 0문자도 나타냅니다.

패턴 'es'로 끝나는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE '%es';

 

'mer' 패턴을 포함하는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE '%mer%';

 

_ 와일드카드 사용

_와일드 카드는 단일문자를 나타냅니다.

임의의 문자나 숫자가 될수 있지만 각각은 _ 하나의 문자만 나타냅니다.

 

City 임의의 문자로 시작하고 뒤에 "ondon" 이 오는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE City LIKE '_ondon';

 

City "L" 로 시작하고 그뒤에 3개문자가 이어지고 "on"으로 끝나는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE City LIKE 'L___on';

 

[]와일드 카드 사용

[]  와일드 카드는 내부 문자 중 하나라도 일치하는 경우 결과를 반환합니다.

"b", "s" 또는 "p" 로 시작하는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE '[bsp]%';

 

-와일드카드 사용

-와일드카드를 사용하면 와일드카드 내부의 문자범위를 지정할 수 있습니다.

"a", "b", "c", "d", "e" 또는 "f" 로 시작하는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE '[a-f]%';

 

와일드카드 결합

% 및 _ 와 같은 와일드 카드는 _ 다른 와일드 카드와 함께 사용할 수 있습니다.

"a" 로 시작하고 길이가 3자 이상인 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE 'a__%';

 

두번쨰 위치에 "r" 이 있는 모든 고객을 반환합니다.

SELECT * FROM Customers

WHERE CustomerName LIKE '_r%';

 

와일드 카드 없이

와일드카드가 지정되지 않으면 구문 과 정확하게 일치해야 결과가 반환됩니다.

스페인의 모든 고객을 돌려보내세요

SELECT * FROM Customers

WHERE Country LIKE 'Spain';

 

 

 

 

 

 

'SQL > SQL Tutorial' 카테고리의 다른 글

21.SQL BETWEEN  (0) 2024.07.03
20.SQL IN 연산자  (0) 2024.07.02
18.SQL LIKE  (1) 2024.06.30
17.SQL AVG()  (0) 2024.06.30
16.SQL SUM()  (0) 2024.06.27