다음을 통해 공유


[^] (와일드카드 - 일치하지 않는 문자) (Transact-SQL)

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceMicrosoft Fabric 미리 보기의 SQL 데이터베이스

범위 내에 없거나 대괄호 사이에 지정된 집합에 없는 단일 문자와 일치합니다 [^]. 이러한 와일드카드 문자는 패턴 일치와 LIKE같은 PATINDEX 문자열 비교에 사용할 수 있습니다.

Examples

이 문서의 코드 샘플은 AdventureWorks2022 또는 AdventureWorksDW2022 샘플 데이터베이스를 사용합니다. 이 데이터베이스는 Microsoft SQL Server 샘플 및 커뮤니티 프로젝트 홈페이지에서 다운로드할 수 있습니다.

A: 기본 예제

다음 예제에서는 연산자를 [^] 사용하여 테이블에서 이름이 시작 Contact 되고 문자가 아닌 Al세 번째 문자가 있는 상위 5명의 사용자를 a 찾습니다.

SELECT TOP 5 FirstName, LastName
FROM Person.Person
WHERE FirstName LIKE 'Al[^a]%';

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

FirstName     LastName
---------     --------
Alex          Adams
Alexandra     Adams
Allison       Adams
Alisha        Alan
Alexandra     Alexander

B: 문자 범위 검색

와일드카드 집합에는 단일 문자 또는 문자 범위뿐만 아니라 문자와 범위의 조합도 포함될 수 있습니다. 다음 예제에서는 연산자를 [^] 사용하여 문자 또는 숫자로 시작하지 않는 문자열을 찾습니다.

SELECT [object_id], OBJECT_NAME(object_id) AS [object_name], name, column_id
FROM sys.columns
WHERE name LIKE '[^0-9A-z]%';

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

object_id     object_name   name    column_id
---------     -----------   ----    ---------
1591676718    JunkTable     _xyz    1