Bagikan melalui


[^] (Wildcard - karakter yang tidak cocok) (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceDatabase SQL di Microsoft Fabric

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

Examples

Sampel kode dalam artikel ini menggunakan database sampel AdventureWorks2025 atau AdventureWorksDW2025, yang dapat Anda unduh dari halaman beranda Sampel dan Proyek Komunitas Microsoft SQL Server.

A: Contoh dasar

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

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

Berikut set hasilnya.

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 set hasilnya.

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