TRIM (Transact-SQL)
Si applica a: SQL Server 2017 (14.x) e versioni successive database SQL di Azure Istanza gestita di SQL di Azure endpoint di analisi SQL di Azure Synapse Analytics in Microsoft Fabric Warehouse in Microsoft Fabric
Rimuove il carattere spazio char(32)
o altri caratteri specificati dall'inizio e dalla fine di una stringa.
Facoltativamente, rimuove lo spazio o char(32)
altri caratteri specificati dall'inizio, dalla fine o da entrambi i lati di una stringa.
A partire da SQL Server 2022 (16.x), facoltativamente rimuove lo spazio char(32)
o altri caratteri specificati dall'inizio, dalla fine o da entrambi i lati di una stringa.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
Sintassi per SQL Server 2022 (16.x) e versioni precedenti, database SQL di Azure e Azure Synapse Analytics:
TRIM ( [ characters FROM ] string )
Sintassi per SQL Server 2022 (16.x) e versioni successive, Istanza gestita di SQL di Azure e Microsoft Fabric:
Importante
È necessario impostare il livello di compatibilità del database su 160
per usare le LEADING
parole chiave , TRAILING
o BOTH
.
TRIM ( [ LEADING | TRAILING | BOTH ] [characters FROM ] string )
Argomenti
[ LEADING | TRAILING | BOTH ]
Si applica a: SQL Server 2022 (16.x) e versioni successive, Istanza gestita di SQL di Azure e Microsoft Fabric:
Il primo argomento facoltativo specifica il lato della stringa da tagliare:
LEADING
rimuove i caratteri specificati dall'inizio di una stringa.TRAILING
rimuove i caratteri specificati dalla fine di una stringa.BOTH
(comportamento posizionale predefinito) rimuove i caratteri specificati dall'inizio e dalla fine di una stringa.
characters
Valore letterale, variabile o chiamata di funzione di qualsiasi tipo di carattere non LOB (nvarchar, varchar, nchar o char) contenente i caratteri che devono essere rimossi. I tipi nvarchar(max) e varchar(max) non sono consentiti.
string
Espressione di qualsiasi tipo di carattere (nvarchar, varchar, nchar o char) in cui devono essere rimossi i caratteri.
Tipi restituiti
Restituisce un'espressione carattere con un tipo di argomento stringa in cui il carattere spazio char(32)
o altri caratteri specificati vengono rimossi a entrambe le estremità. Restituisce NULL
se la stringa di input è NULL
.
Osservazioni:
Per impostazione predefinita, la funzione TRIM
rimuove il carattere spazio sia dall'inizio che dalla fine della stringa. Questo comportamento è equivalente a LTRIM(RTRIM(@string))
.
Per abilitare gli argomenti facoltativi LEADING
, TRAILING
o BOTH
posizionali in SQL Server 2022 (16.x), è necessario abilitare il livello 160
di compatibilità del database nel database a cui ci si connette durante l'esecuzione di query.
- Con l'argomento posizionale facoltativo
LEADING
, il comportamento equivale aLTRIM(@string, characters)
. - Con l'argomento posizionale facoltativo
TRAILING
, il comportamento equivale aRTRIM(@string, characters)
.
Esempi
R. Rimuovere il carattere spazio a entrambe le estremità della stringa
L'esempio seguente rimuove gli spazi prima e dopo la parola test
.
SELECT TRIM( ' test ') AS Result;
Il set di risultati è il seguente.
test
B. Rimuovere i caratteri specificati a entrambe le estremità della stringa
Nell'esempio seguente viene fornito un elenco di possibili caratteri da rimuovere da una stringa.
SELECT TRIM( '.,! ' FROM ' # test .') AS Result;
Il set di risultati è il seguente.
# test
In questo esempio sono stati rimossi solo il punto finale e gli spazi precedenti a #
e successivi alla parola test
. Gli altri caratteri sono stati ignorati perché non esistevano nella stringa.
C. Rimuovere i caratteri specificati dall'inizio di una stringa
Importante
È necessario impostare il livello di compatibilità del database su 160
per usare le LEADING
parole chiave , TRAILING
o BOTH
.
Nell'esempio seguente viene rimosso il carattere .
iniziale dall'inizio della stringa prima della parola test
.
SELECT TRIM(LEADING '.,! ' FROM ' .# test .') AS Result;
Il set di risultati è il seguente.
# test .
D. Rimuovere i caratteri specificati dalla fine di una stringa
Importante
È necessario impostare il livello di compatibilità del database su 160
per usare le LEADING
parole chiave , TRAILING
o BOTH
.
Nell'esempio seguente viene rimosso il carattere .
finale dalla fine della stringa dopo la parola test
.
SELECT TRIM(TRAILING '.,! ' FROM ' .# test .') AS Result;
Il set di risultati è il seguente.
.# test
E. Rimuovere i caratteri specificati dall'inizio e dalla fine di una stringa
Importante
È necessario impostare il livello di compatibilità del database su 160
per usare le LEADING
parole chiave , TRAILING
o BOTH
.
Nell'esempio seguente vengono rimossi i caratteri 123
dall'inizio e dalla fine della stringa 123abc123
.
SELECT TRIM(BOTH '123' FROM '123abc123') AS Result;
Il set di risultati è il seguente.
abc