[^] (Wildcard - Karakter yang Tidak Cocok) (Transact-SQL)

Berlaku untuk:SQL Server Azure SQL DatabaseAzure SQL Managed Instance

Cocok dengan karakter tunggal apa pun yang tidak berada dalam rentang atau set yang ditentukan di antara tanda kurung [^]siku . Karakter kartubebas ini dapat digunakan dalam perbandingan string yang melibatkan pencocokan pola, seperti LIKE dan PATINDEX.

Contoh

A: Contoh sederhana

Contoh berikut menggunakan operator [^] untuk menemukan 5 orang teratas dalam Contact tabel yang memiliki nama depan yang dimulai dengan Al dan memiliki huruf ketiga yang bukan huruf a.

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

Berikut adalah hasil yang ditetapkan.

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

B: Mencari rentang karakter

Set kartubebas dapat mencakup karakter tunggal atau rentang karakter serta kombinasi karakter dan rentang. Contoh berikut menggunakan operator [^] untuk menemukan string yang tidak dimulai dengan huruf atau angka.

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

Berikut adalah hasil yang ditetapkan.

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

Lihat juga

LIKE (Transact-SQL)
PATINDEX (Transact-SQL)
% (Wildcard - Karakter yang Cocok) (Transact-SQL)
[ ] (Wildcard - Karakter yang Cocok) (Transact-SQL)
_ (Wildcard - Cocok dengan Satu Karakter) (Transact-SQL)