SQL 와일드 카드
데이터베이스 데이터를 검색할 때, SQL 대체기호를 사용할 수 있습니다.
SQL 와일드 카드
데이터베이스 데이터를 검색할 때, SQL 대체기호는 하나나 여러 개의 문자를 대체할 수 있습니다.
SQL 대체기호는 LIKE 연산자와 함께 사용해야 합니다.
SQL에서 다음 대체기호를 사용할 수 있습니다:
대체기호 | 설명 |
---|---|
% | 0개나 여러 개의 문자를 대표 |
_ | 단일 문자만 대체 |
[charlist] | 문자열 열에 있는 어떤 단일 문자 |
[^charlist] 또는 [!charlist] |
문자열 열에 없는 어떤 단일 문자 |
원본 테이블 (예제에서 사용):
Persons 테이블:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
1 | 아ダ姆斯 | 존 | Oxford Street | 런던 |
2 | 버시 | 조지 | Fifth Avenue | 뉴욕 |
3 | 카터 | 토마스 | 창안 거리 | 베이징 |
사용 % 대체기호
예제 1
지금, 우리는 "Persons" 테이블에서 "Ne"로 시작하는 도시에 살아있는 사람을 선택하고 싶습니다:
아래의 SELECT 문을 사용할 수 있습니다:
SELECT * FROM Persons WHERE 도시 LIKE 'Ne%'
결과 집합:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
2 | 버시 | 조지 | Fifth Avenue | 뉴욕 |
예제 2
다음은 "Persons" 테이블에서 "lond"을 포함하는 도시에 살아있는 사람을 선택하고 싶습니다:
아래의 SELECT 문을 사용할 수 있습니다:
SELECT * FROM Persons WHERE 도시 LIKE '%lond%'
결과 집합:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
1 | 아ダ姆斯 | 존 | Oxford Street | 런던 |
_ 대체 문자를 사용하십시오
예제 1
지금, 우리는 "Persons" 테이블에서 이름의 첫 번째 문자 이후에 "eorge"로 시작하는 사람을 선택하고 싶습니다:
아래의 SELECT 문을 사용할 수 있습니다:
SELECT * FROM Persons WHERE FirstName LIKE '_eorge'
결과 집합:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
2 | 버시 | 조지 | Fifth Avenue | 뉴욕 |
예제 2
다음은 "Persons" 테이블에서 "C"로 시작하는 성씨, 그 뒤에 어떤 문자든지, 그 뒤에 "r", 그 뒤에 어떤 문자든지, 그 뒤에 "er"로 시작하는 이력을 선택하고 싶습니다:
아래의 SELECT 문을 사용할 수 있습니다:
SELECT * FROM Persons WHERE LastName LIKE 'C_r_er'
결과 집합:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
3 | 카터 | 토마스 | 창안 거리 | 베이징 |
[charlist] 대체 문자를 사용하십시오
예제 1
지금, 우리는 "Persons" 테이블에서 "A" 또는 "L" 또는 "N"로 시작하는 도시에 살아있는 사람을 선택하고 싶습니다:
아래의 SELECT 문을 사용할 수 있습니다:
SELECT * FROM Persons WHERE 도시 LIKE '[ALN]%'
결과 집합:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
1 | 아ダ姆斯 | 존 | Oxford Street | 런던 |
2 | 버시 | 조지 | Fifth Avenue | 뉴욕 |
예제 2
지금, 우리는 "Persons" 테이블에서 살아있는 도시를 선택하고 싶습니다시작하지 않는 "A" 또는 "L" 또는 "N"로 시작하는 사람:
아래의 SELECT 문을 사용할 수 있습니다:
SELECT * FROM Persons WHERE 도시 LIKE '[!ALN]%'
결과 집합:
Id | LastName | FirstName | 주소 | 도시 |
---|---|---|---|---|
3 | 카터 | 토마스 | 창안 거리 | 베이징 |