SQLShack (Norsk)

I denne artikkelen vil vi gjennomgå den nye SQL TRIM-funksjonen i SQL Server 2017 og utover, samt å gi litt informasjon om strengfunksjoner som forhåndsdaterer den som LTRIM OG RTRIM.

SQL-utviklere står vanligvis overfor problemer med mellomrom i begynnelsen og / eller slutten av en tegnstreng. Vi kan trenge å trimme ledende og etterfølgende tegn fra en tegnstreng. Vi kan også trenge å gjøre strengmanipuleringer med SQL-funksjoner. Anta at vi vil fjerne mellomrom fra den bakre enden av en streng, vi trenger å bruke SQL LTRIM og RTRIM-funksjoner til SQL Server 2016.

I SQL Server 2017 får vi en ny innebygd funksjon til trimme både ledende og etterfølgende tegn sammen med en enkelt funksjon. SQL TRIM-funksjonen gir ekstra funksjonalitet for å fjerne tegn fra den angitte strengen. Vi kan fortsatt bruke RTRIM og LTRIM-funksjonen med SQL Server 2017 også. La oss utforske disse funksjonene med eksempler.

SQL LTRIM-funksjon

Den fjerner tegn fra begynnelsen (starter fra venstre side) av den angitte strengen. I det følgende spørsmålet har vi mellomrom før og etter strengen. Vi må fjerne plass fra venstre side av strengen ved hjelp av LTRIM-funksjonen.

Vi bruker funksjonen SQL DATALENGTH () for å beregne datalengden i byte før og etter bruk av SQL LTRIM-funksjon.

  • Datastringstørrelse i byte for original streng: 24
  • Datastringstørrelse i byte etter SQL LTRIM: 18

SQL RTRIM-funksjon

Det fjerner tegn fra slutten ((starter fra høyre side) av den angitte strengen. La oss utføre følgende spørsmål for å se på effekten av SQL RTRIM-funksjonen.

  • Datastrengstørrelse i byte for originalstreng: 24
  • Datastringstørrelse i byte etter SQL RTRIM: 16

TRIM-funksjon i SQL Server 2017

Hvis vi trenger å fjerne både ledende og opplæringsrom før SQL Server 2017, må vi bruke både LTRIM- og RTRIM-funksjonen. , brukte vi både LTRIM- og RTIM-funksjoner med en strengvariabel.

I skjermbildet nedenfor kan vi se at det fjerner både ledende og tra iling plass fra strengen.

  • Datastringstørrelse i byte for original streng: 24
  • Datastringstørrelse i byte etter SQL LTRIM: 11

  • Datastringstørrelse i byte for originalstreng: 25
  • Datastringstørrelse i byte etter SQL LTRIM og RTRIM: 11

Vi må bruke to funksjoner for å fjerne mellomrom fra strengen. Vi kan bruke en enkelt forekomst av en TRIM-funksjon i SQL Server 2017 og utover for å trimme både ledende og etterfølgende tegn, la oss utforske TRIM-funksjonen i en ytterligere del av denne artikkelen.

Syntaksen til TRIM-funksjonen

1

TRIM (streng)

  • TrimCharacter: Vi kan spesifisere tegnet som skal fjernes fra strengen. Som standard fjerner SQL Server mellomrom fra begge sider av en streng
  • Streng: Vi må spesifisere strengen vi vil trimme

La oss utforske SQL TRIM-funksjonen med eksempler.

TRIM Leading og Training mellomrom:

Som standard fjerner Trim-funksjonen mellomrommet fra begge sider av en streng. I det følgende spørsmålet må vi definere en streng med mellomrom på begge sider av strengen.

Utfør dette spørsmålet:

Vi spesifiserte ingen tegn som skulle fjernes i TRIM-funksjonen. I utgangen fjerner SQL TRIM-funksjon både ledende og etterfølgende plass.

Du kan også merke forskjellen i strenglengde før og etter TRIM-funksjonen.

  • Datastringstørrelse i byte for original streng: 24
  • Datastringstørrelse i byte etter SQL TRIM: 11

TRIM Ledende tegn fra en streng:

I forrige eksempel utforsket vi at SQL TRIM er erstatningen for RTRIM og LTRIM og den eliminerer å slette alt mellomromstegnet før og etter en streng. Vi kan også fjerne tegnene fra strengen ved hjelp av TRIM. Anta at vi vil fjerne tegnet PÅ fra strengen, vi kan spesifisere det i TRIM-funksjonen i henhold til følgende skript.

Den sjekker de spesifiserte tegnene på både den fremre og etterfølgende siden og fjerner de bestemte tegnene. I strengen Application har vi karakter ON på forsiden. I det følgende skjermbildet kan du se på utdataene etter TRIM-funksjonen.

  • Datastringstørrelse i byte for original streng: 11
  • Datastrengstørrelse i byte etter SQL TRIM: 9

La oss se på et eksempel til. Denne gangen vil vi fjerne tegn App fra forsiden. Vi trenger ikke gjøre noen endringer i skriptet. Vi kan spesifisere tegnet som skal fjernes ved hjelp av SQL TRIM, og det gir ønsket utdata.

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

I tidligere eksempler fjernet vi tegnet enten fra den fremre enden eller etterfølgende . Hvis vi har et tegn på begge sider, fjerner det dem også.

I det følgende eksemplet vil vi fjerne tegn A som er på begge sider av strengen. Utfør skriptet, og det fjerner de angitte tegnene fra begge sider.

  • Datastringstørrelse i Bytes for Original Streng: 12
  • Datastrengstørrelse i byte etter SQL TRIM: 10

Anta at vi har spesifisert et tegn som ikke er tilstede på strengen. I det følgende eksemplet ønsker vi å fjerne tegn A og C fra ledende eller etterfølgende ende. Vi har ikke karakter C på begge sider, så den fjerner den ikke. Den fjerner bare tegn A og gir utdataene.

  • Datastringstørrelse i byte for originalstreng: 12
  • Datastringstørrelse i byte etter SQL TRIM: 10

TRIM for poster i en tabell

I forrige artikkel brukte vi en variabel til å definere en streng og utføre SQL TRIM-operasjon på den. Vanligvis krever vi bruk av TRIM i tabellregistreringer. La oss bruke det i følgende eksempel.

I de følgende eksemplene eliminerte det tegnet R fra strengen i den fremre og etterfølgende enden.

Vi kan også bruke SQL TRIM-funksjonen i Update-setningen. Anta at vi vil oppdatere alle poster i medarbeidertabellen og vil eliminere tegn Manager fra JobTitile.

Det behandler ikke Manager som et enkelt ord. Trimfunksjon sjekker for hvert tegn i strengen og eliminerer det.

Vi kan bruke komma (,) for å skille hvert tegn også.

Den gjør også det samme arbeidet og fjerner spesifikke tegn fra strengen i en ledende og etterfølgende ende.

Konklusjon

I denne artikkelen utforsket vi SQL TRIM-funksjonen med SQL Server 2017 og nyere. Vi lærte også om TRIM-funksjonene LTRIM og RTRIM tilgjengelig på eller før SQL Server 2016 også.

Avhengig av hvilken versjon av SQL Server du bruker, bør du forstå disse funksjonene og være kjent med konseptene. Jeg håper du finner denne artikkelen nyttig. Gi gjerne tilbakemelding eller still spørsmål i kommentarene nedenfor.

  • Forfatter
  • Nylige innlegg
Som MCSA-sertifisert og Microsoft Certified Trainer i Gurgaon, India, med 13 års erfaring, jobber Rajendra for en rekke store selskaper med fokus på ytelsesoptimalisering, overvåking, høy tilgjengelighet og katastrofegjenopprettingsstrategier og implementering. Han er forfatter av hundrevis av autoritative artikler om SQL Server, Azure, MySQL, Linux, Power BI, Performance tuning, AWS / Amazon RDS, Git og relaterte teknologier som har blitt sett av over 10m lesere til dags dato.
Han er skaperen av en av de største gratis online samlingene av artikler om et enkelt emne, med sin 50-delte serie om SQL Server Always On Availability Groups. Basert på sitt bidrag til SQL Server-samfunnet, har han blitt anerkjent med forskjellige priser, inkludert den prestisjetunge «Årets beste forfatter» kontinuerlig i 2020 og 2021 på SQLShack.
Raj er alltid interessert i nye utfordringer, så hvis du trenger rådgivning hjelp til ethvert emne som dekkes i hans skrifter, kan du nås på [email protected]
Se alle innlegg av Rajendra Gupta

Siste innlegg av Rajendra Gupta (se alle)
  • Utfører mindre og større versjonsoppgraderinger for AWS RDS SQL Server – 29. januar 2021
  • Distribuere AWS RDS PostgreSQL-forekomster – 27. januar 2021
  • Overføre lokale SQL-databaser til AWS RDS SQL Server ved hjelp av AWS DMS – 25. januar , 2021

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *