Condividi tramite


[^] (Carattere jolly - caratteri non corrispondenti) (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureDatabase SQL in Microsoft Fabric

Trova la corrispondenza con qualsiasi carattere singolo non compreso nell'intervallo o impostato tra parentesi [^]quadre . È possibile usare i caratteri jolly nei confronti di stringhe che prevedono l'uso di criteri di ricerca, ad esempio LIKE e PATINDEX.

Examples

Gli esempi di codice in questo articolo usano il database di esempio AdventureWorks2025 o AdventureWorksDW2025, che è possibile scaricare dalla home page Microsoft SQL Server Samples and Community Projects.

R: Esempio di base

Nell'esempio seguente viene usato l'operatore [^] per trovare le prime cinque persone nella Contact tabella con un nome che inizia con Al e ha una terza lettera che non è la lettera a.

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

Il set di risultati è il seguente.

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

B: Ricerca di intervalli di caratteri

Un set di caratteri jolly può includere singoli caratteri o intervalli di caratteri, nonché combinazioni di caratteri e intervalli. Nell'esempio seguente viene usato l'operatore [^] per trovare una stringa che non inizia con una lettera o un numero.

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

Il set di risultati è il seguente.

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