[ ] (Wild카드 - 일치하는 문자)(Transact-SQL)

적용 대상: Microsoft Fabric의 Microsoft FabricWarehouse에 있는 SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsPlatform System(PDW) SQL 분석 엔드포인트

대괄호 사이에 지정된 범위 또는 집합 내의 모든 단일 문자와 일치합니다 [ ]. 이러한 야생카드 문자는 다음과 같은 LIKEPATINDEX패턴 일치를 포함하는 문자열 비교에 사용할 수 있습니다.

예제

A: 간단한 예

다음 예제에서는 문자 m로 시작하는 이름을 반환합니다. [n-z]는 두 번째 문자가 n부터 z 사이여야 함을 지정합니다. 백분율 와일드카드 % 3자로 시작하는 문자를 허용하거나 허용하지 않습니다. modelmsdb 데이터베이스는 이 조건을 충족합니다. master 데이터베이스는 기준을 충족하지 않으며 결과 집합에서 제외됩니다.

SELECT name FROM sys.databases
WHERE name LIKE 'm[n-z]%';

결과 집합은 다음과 같습니다.

name
-----
model
msdb

추가 적격 데이터베이스가 설치되어 있을 수 있습니다.

B: 복잡한 예

다음 예제에서는 [] 연산자를 사용하여 4자리 우편 번호가 있는 주소가 있는 모든 Adventure Works 직원의 ID와 이름을 찾습니다.

-- Uses AdventureWorks  
  
SELECT e.BusinessEntityID, p.FirstName, p.LastName, a.PostalCode  
FROM HumanResources.Employee AS e  
INNER JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID  
INNER JOIN Person.BusinessEntityAddress AS ea ON e.BusinessEntityID = ea.BusinessEntityID  
INNER JOIN Person.Address AS a ON a.AddressID = ea.AddressID  
WHERE a.PostalCode LIKE '[0-9][0-9][0-9][0-9]';  

결과 집합은 다음과 같습니다.

EmployeeID      FirstName      LastName      PostalCode  
----------      ---------      ---------     ----------  
290             Lynn           Tsoflias      3000  

C: 범위와 단일 문자를 결합하는 집합 사용

와일드 카드 집합에는 단일 문자와 범위가 모두 포함될 수 있습니다. 다음 예제에서는 [] 연산자를 사용하여 숫자 또는 일련의 특수 문자로 시작하는 문자열을 찾습니다.

SELECT [object_id], OBJECT_NAME(object_id) AS [object_name], name, column_id 
FROM sys.columns 
WHERE name LIKE '[0-9!@#$.,;_]%';

결과 집합은 다음과 같습니다.

object_id     object_name	                      name	column_id
---------     -----------                         ----  ---------
615673241     vSalesPersonSalesByFiscalYears	  2002	5
615673241     vSalesPersonSalesByFiscalYears	  2003	6
615673241     vSalesPersonSalesByFiscalYears	  2004	7
1591676718    JunkTable                           _xyz  1

참고 항목

LIKE(Transact-SQL)
PATINDEX(Transact-SQL)
%(Wild카드 - 일치하는 문자)(Transact-SQL)
[^] (Wild카드 - 일치하지 않는 문자)(Transact-SQL)
_ (와일드카드 - 문자 하나와 일치)(Transact-SQL)