TRIM () per rimuovere spazio in SQL Server


SQL Server 2016 o versione precedente versioni non ha una funzione di manipolazione delle stringhe diretta per tagliare sia gli spazi iniziali che quelli finali indesiderati. Esistono soluzioni alternative per utilizzare LTRIM per rimuovere lo spazio iniziale e RTRIM per rimuovere lo spazio finale separatamente. La buona notizia è che la funzione TRIM incorporata è stata introdotta nella versione di SQL Server 2017 insieme ad altre funzioni di stringa come translate () e concat_ws (). Questa nuova funzione rimuoverà gli spazi su entrambi i lati della stringa in un’unica operazione e renderà il tuo codice pulito.

TRIM () in SQL Server 2017 e versioni successive

La funzione TRIM () è introdotto in SQL Server 2017. In tutte le versioni precedenti, abbiamo solo LTRIM () per rimuovere gli spazi iniziali dalla stringa e RTRIM () per rimuovere gli spazi finali. La funzione appena introdotta può essere utilizzata per rimuovere gli spazi iniziali e finali indesiderati da una stringa in una volta sola. Può anche essere usato per rimuovere caratteri diversi dallo spazio dall’inizio e dalla fine della stringa.

Uso della funzione TRIM incorporata

La sintassi di trim è TRIM (stringa) . Se esegui una stringa senza utilizzare i caratteri DA, taglierà gli spazi su entrambi i lati della stringa. Se utilizzi “Caratteri” DA, verranno visualizzati i caratteri specifici all’inizio e alla fine della stringa e li rimuoverà.

Esempio per tagliare solo lo spazio

SELECT TRIM(" My Tec Bits ")/* Result */"My Tec Bits"

Esempio per tagliare i caratteri

SELECT TRIM( ".! " FROM "@ My Tec Bits !..") AS Result;/* Result */"@ My Tec Bits"

TRIM Equivalent in SQL Server 2016 fino al 2005

In SQL Server 2016 e versioni precedenti, se si tenta di utilizzare la funzione TRIM, verrà visualizzato un messaggio di errore che indica che “TRIM” non è un nome di funzione integrato riconosciuto. Pertanto, nelle versioni precedenti di SQL Server, l’equivalente della funzione incorporata utilizza LTRIM e RTRIM insieme come LTRIM (RTRIM (‘String’)). Se ritieni che questa tecnica renda il codice brutto, puoi racchiudere questo metodo in una UDF e usarlo in questo modo:

TRIM Equivalent in SQL Server 2000

Nella versione 2000 di SQL Server è inoltre possibile utilizzare LTRIM e RTRIM insieme per ottenere la funzionalità di taglio laterale. Se si è inclini a creare una UDF, c’è una piccola modifica rispetto all’UDF che abbiamo creato in precedenza. SQL Server 2000 non dispone del tipo di dati Varchar (Max). Quindi dobbiamo usare invece il tipo di dati Varchar (8000). L’UDF sarà così:

Write a Comment

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *