TRIM () -funktion för att ta bort utrymme i SQL Server


SQL Server 2016 eller äldre versioner har inte en rakt fram strängmanipuleringsfunktion för att trimma både de ledande och efterföljande oönskade utrymmena. Det finns lösningar för att använda LTRIM för att ta bort det ledande utrymmet och RTRIM för att ta bort det bakre utrymmet separat. Den goda nyheten är att den inbyggda TRIM-funktionen introduceras i SQL Server 2017-versionen tillsammans med andra strängfunktioner som translate () och concat_ws (). Denna nya funktion tar bort mellanslag på båda sidor av strängen i en operation och gör din kod ren.

TRIM () i SQL Server 2017 och högre

TRIM () -funktionen är introducerades i SQL Server 2017. I alla tidigare versioner har vi bara LTRIM () för att ta bort de ledande mellanslagen från strängen och RTRIM () för att ta bort de efterföljande utrymmena. Den nyligen introducerade funktionen kan användas för att ta bort de oönskade ledande och bakre utrymmena från en sträng på en gång. Det kan också användas för att ta bort andra tecken än mellanslag från början och slutet av strängen.

Använda den inbyggda TRIM-funktionen

Syntaxen för trim är TRIM (sträng) . Om du bara strängar utan att använda tecken från, kommer det att klippa av mellanslag på båda sidor om strängen. Om du använder ’Tecken’ FRÅN kommer det att se ut för de specifika tecknen i början och slutet av strängen och ta bort dem.

Exempel för att bara trimma utrymme

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

Exempel för att trimma tecken

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

TRIM-ekvivalent i SQL Server 2016 till 2005

I SQL Server 2016 och lägre versioner, om du försöker använda TRIM-funktionen får du ett fel om att ’TRIM’ inte är ett erkänt inbyggt funktionsnamn. Så i de äldre versionerna av SQL Server, motsvarar den inbyggda funktionen LTRIM och RTRIM tillsammans som LTRIM (RTRIM (’String’)). Om du tycker att den här tekniken får koden att se ful ut, kan du lägga in den här metoden i en UDF och använda den så här:

TRIM-ekvivalent i SQL Server 2000

I version 2000 av SQL Server du kan också använda LTRIM och RTRIM tillsammans för att uppnå båda sidotrimningsfunktionerna. Om du är benägen att skapa en UDF, finns det en mindre förändring från UDF som vi har skapat tidigare. SQL Server 2000 har inte datatypen Varchar (Max). Så vi måste använda datatypen Varchar (8000) istället. UDF kommer att vara så här:

Write a Comment

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *