SQLShack (Dansk)

I denne artikel gennemgår vi den nye SQL TRIM-funktion i SQL Server 2017 og fremefter samt give nogle oplysninger om strengefunktioner, der foruddaterer det som LTRIM OG RTRIM.

SQL-udviklere står normalt over for problemer med mellemrum i begyndelsen og / eller slutningen af en tegnstreng. Vi bliver muligvis nødt til at trimme ledende og efterfølgende tegn fra en tegnstreng. Vi bliver muligvis også nødt til at udføre strengmanipulationer med SQL-funktioner. Antag, at vi vil fjerne mellemrum fra den bageste ende af en streng, vi bliver nødt til at bruge SQL LTRIM og RTRIM-funktioner indtil SQL Server 2016.

I SQL Server 2017 får vi en ny indbygget funktion til trimme både førende og efterfølgende tegn sammen med en enkelt funktion. SQL TRIM-funktion giver yderligere funktionalitet til at fjerne tegn fra den angivne streng. Vi kan stadig også bruge RTRIM og LTRIM-funktionen med SQL Server 2017. Lad os udforske disse funktioner med eksempler.

SQL LTRIM-funktion

Det fjerner tegn fra begyndelsen (starter fra venstre side) af den angivne streng. I den følgende forespørgsel har vi hvidt mellemrum før og efter strengen. Vi skal fjerne plads fra venstre side af strengen ved hjælp af LTRIM-funktionen.

Vi bruger funktionen SQL DATALENGTH () til at beregne datalængde i byte før og efter brug af SQL LTRIM-funktionen.

  • Datastringstørrelse i byte til original streng: 24
  • Datastringstørrelse i byte efter SQL LTRIM: 18

SQL RTRIM-funktion

Det fjerner tegn fra slutningen ((starter fra højre side) af den angivne streng. Lad os udføre følgende forespørgsel for at se på effekten af SQL RTRIM-funktionen.

  • Datastringstørrelse i Bytes til originalstreng: 24
  • String af datastreng i Bytes efter SQL RTRIM: 16

TRIM-funktion i SQL Server 2017

Før SQL Server 2017, hvis vi har brug for at fjerne både Leading og Training-områder, skal vi bruge både LTRIM- og RTRIM-funktionen. I den følgende forespørgsel , brugte vi både LTRIM- og RTIM-funktioner med en strengvariabel.

I det følgende skærmbillede kan vi se, at det fjerner både ledende og tra iling plads fra strengen.

  • Datastringstørrelse i byte til original streng: 24
  • Datastringstørrelse i byte efter SQL LTRIM: 11

  • Datastringstørrelse i Bytes til originalstreng: 25
  • Datastringstørrelse i Bytes efter SQL LTRIM og RTRIM: 11

Vi skal bruge to funktioner til at fjerne mellemrumene fra strengen. Vi kan bruge en enkelt forekomst af en TRIM-funktion i SQL Server 2017 og fremefter til at trimme både førende og efterfølgende tegn, lad os udforske TRIM-funktionen i et yderligere afsnit af denne artikel.

Syntaksen for TRIM-funktionen

1

TRIM (streng)

  • TrimCharacter: Vi kan specificere det tegn, der skal fjernes fra strengen. Som standard fjerner SQL Server mellemrum fra begge sider af en streng
  • Streng: Vi skal specificere den streng, som vi vil beskære

Lad os undersøge SQL TRIM-funktionen med eksempler.

TRIM Leading- og træningsrum:

Som standard fjerner Trim-funktionen pladsen fra begge sider af en streng. I den følgende forespørgsel skal vi definere en streng med plads på begge sider af strengen.

Udfør denne forespørgsel:

Vi har ikke angivet nogen tegn, der skal fjernes i TRIM-funktionen. I output fjerner SQL TRIM-funktion både ledende og efterfølgende plads.

Du kan også bemærke forskellen i strenglængde før og efter TRIM-funktionen.

  • Datastringstørrelse i byte til original streng: 24
  • Datastringstørrelse i byte efter SQL TRIM: 11

TRIM Førende tegn fra en streng:

I det foregående eksempel undersøgte vi, at SQL TRIM er erstatningen for RTRIM og LTRIM, og det eliminerer at slette al pladstegn før og efter en streng. Vi kan også fjerne tegnene fra strengen ved hjælp af TRIM. Antag, at vi vil fjerne tegn TIL fra strengen, vi kan specificere det i TRIM-funktionen i henhold til følgende script.

Det kontrollerer de angivne tegn på både den forreste og efterfølgende side og fjerner de bestemte tegn. I strengen Application har vi karakter ON på forsiden. I det følgende skærmbillede kan du se på output efter TRIM-funktion.

  • Datastrengstørrelse i byte for originalstreng: 11
  • String af datastreng i byte efter SQL TRIM: 9

Lad os se på endnu et eksempel. Denne gang vil vi fjerne tegn App fra den forreste side. Vi behøver ikke foretage ændringer i scriptet. Vi kan specificere det tegn, der skal fjernes, ved hjælp af SQL TRIM, og det giver det krævede output.

  • Datastringstørrelse i Bytes for Original String: 11
  • Datastringstørrelse i Bytes efter SQL TRIM: 8

I tidligere eksempler fjernede vi tegn enten fra den forreste ende eller efterfølgende . Hvis vi har et tegn på begge sider, fjerner det dem også.

I det følgende eksempel vil vi fjerne tegn A, der er på begge sider af strengen. Udfør scriptet, og det fjerner de angivne tegn fra begge sider.

  • Datastrengstørrelse i Bytes for Original String: 12
  • Datastringstørrelse i Bytes efter SQL TRIM: 10

Antag, at vi har angivet et tegn, der ikke findes i strengen. I det følgende eksempel vil vi fjerne tegn A og C fra den forreste eller efterfølgende ende. Vi har ikke karakter C på begge sider, så den fjerner den ikke. Det fjerner kun tegn A og giver output.

  • Datastringstørrelse i Bytes for Original String: 12
  • Datastringstørrelse i Bytes efter SQL TRIM: 10

TRIM til poster i en tabel

I den forrige artikel brugte vi en variabel til at definere en streng og udføre SQL TRIM-operation på den. Normalt kræver vi brug af TRIM i tabeloptegnelser. Lad os bruge det i følgende eksempel.

I de følgende eksempler fjernede det tegn R fra strengen i den forreste og efterfølgende ende.

Vi kan også bruge SQL TRIM-funktionen i opdateringserklæringen. Antag, at vi vil opdatere alle poster i medarbejdertabellen og vil fjerne tegn Manager fra JobTitile.

Det behandler ikke manager som et enkelt ord. Trim-funktion kontrollerer for hvert tegn i strengen og fjerner den.

Vi kan bruge komma (,) til at adskille hvert tegn også.

Det gør også det samme arbejde og fjerner bestemte tegn fra strengen i en forreste og efterfølgende ende.

Konklusion

I denne artikel undersøgte vi SQL TRIM-funktionen med SQL Server 2017 og derover. Vi lærte også om TRIM-funktionerne LTRIM og RTRIM, der også er tilgængelige på eller før SQL Server 2016.

Afhængigt af hvilken version af SQL Server du bruger, skal du forstå disse funktioner og være fortrolig med begreberne. Jeg håber, du finder denne artikel nyttig. Du er velkommen til at give feedback eller stille spørgsmål i kommentarerne nedenfor.

  • Forfatter
  • Seneste indlæg
Som MCSA-certificeret og Microsoft Certified Trainer i Gurgaon, Indien, med 13 års erfaring, arbejder Rajendra for en række store virksomheder med fokus på ydeevneoptimering, overvågning, høj tilgængelighed og katastrofegendannelsesstrategier og implementering. Han er forfatter til hundredvis af autoritative artikler om SQL Server, Azure, MySQL, Linux, Power BI, Performance tuning, AWS / Amazon RDS, Git og relaterede teknologier, der er blevet set af over 10m læsere til dato.
Han er skaberen af en af de største gratis online samlinger af artikler om et enkelt emne med sin 50-dels serie om SQL Server Always On Availability Groups. Baseret på hans bidrag til SQL Server-samfundet er han blevet anerkendt med forskellige priser, herunder den prestigefyldte “Årets bedste forfatter” kontinuerligt i 2020 og 2021 hos SQLShack.
Raj er altid interesseret i nye udfordringer, så hvis du har brug for rådgivning hjælp til ethvert emne, der er dækket af hans skrifter, han kan nås på [email protected]
Se alle indlæg af Rajendra Gupta

Seneste indlæg af Rajendra Gupta (se alle)
  • Udfører mindre og større versionopgraderinger til AWS RDS SQL Server – 29. januar 2021
  • Implementering af AWS RDS PostgreSQL-forekomster – 27. januar 2021
  • Migrering af lokale SQL-databaser til AWS RDS SQL Server ved hjælp af AWS DMS – 25. januar , 2021

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *