Welcome to Our Website

SQLShack (Svenska)

i den här artikeln kommer vi att försöka ge en kort översikt över SQL-strängfunktionerna som används i SQL Server och vi kommer att ge några exempel.

en strängfunktion är en funktion som tar ett strängvärde som en inmatning oavsett datatypen för det returnerade värdet. I SQL Server finns det många inbyggda strängfunktioner som kan användas av utvecklare.,

ASCII

den första SQL-strängfunktionen som vi kommer att beskriva är ASCII(), som är en skalär funktion som tar en sträng som inmatning och returnerar ASCII-koden för det första tecknet i den här strängen. Observera att ASCII står för American Standard Code for Information Interchange. Det är en 7-bitars teckenkod där varje bit representerar en unik karaktär som kan användas för olika ändamål. Du hittar hela ASCII-tabellen på följande webbplats: ASCII – kod-den utökade ASCII-tabellen.,

1
SELECT ASCII(’A’), ASCII(’AB’) , ASCII(’B’)

Result:

65, 65, 66

As shown in the result ASCII(‘A’) and ASCII(‘AB’) return the same result 65

CHARINDEX

CHARINDEX() is a scalar SQL string function used to return the index of a specific string expression within a given string., CHARINDEX () har 2 obligatoriska parametrar som är inmatningssträngen och tecknet och en valfri parameter som är startindexet för sökoperationen (om detta argument inte anges eller är mindre eller lika med värdet noll (0) startar sökningen i början av inmatningssträngen).

funktionsreturtypen beror på inmatningssträngens längd; om det är nvarchar(MAX) kommer det att returnera ett stort värde annars kommer det att returnera ett INT-värde.,=”f54a7efd55″>

1
välj CHARINDEX(’World’charindex (’World’,’Hello world’, 8)

resultat:

7, 0

som visas i exemplet ovan sökte vi efter STRÄNGVÄRLDEN inom Hello World och i hello World.det returnerade 7,men när vi angav startplatsen som 8 returnerade den 0 eftersom ingen förekomst hittas efter detta index.,

CONCAT

CONCAT() är en skalär SQL-strängfunktion som tar flera strängar som inmatning och returnerar på strängen efter sammanslagning av alla ingångar. Denna funktion kan ta maximalt 254 ingångar.,

exempel:

1
välj concat(’hello’,’ world’)

resultat:

Hello world

concat_ws

concat_ws() är mycket lik concat() funktion, men det tillåter användaren att ange en separator mellan de sammankopplade inmatningssträngarna. Den kan användas för att generera kommaseparerade värden.,

Example:

1
SELECT CONCAT_WS(’,’,’United States’,’New York’)

Result:

United States, New York

SOUNDEX

SOUNDEX() is a scalar function that takes a string value as input and returns a four-character string based on the way this string is spoken., Kodens första tecken är det första tecknet i inmatningssträngen, konverterad till det övre fallet. De återstående tecknen i koden är siffror som representerar bokstäverna i uttrycket. Observera att det finns några bokstäver som ignoreras (A,O,U,E,i,Y,H,W) utom om de är första bokstaven. Om stränglängden är mindre än 4 läggs ytterligare nollor till det returnerade värdet.

SOUNDEX() används främst för strängmatchning och radlänkning.,1387c12f”>

1
SELECT SOUNDEX(’H’), SOUNDEX(’He’), SOUNDEX(’Hello’), SOUNDEX(’Hello World’)

Result:

H000, H000, H400, H400

From the results above, we can see that the result of the SOUNDEX() function is the same for ‘H’ and ‘He’ since the letter ‘e’ is ignored (as mentioned above)., Resultatet av Hello and Hello World är också detsamma eftersom SOUNDEX () – funktionen bara tar de första 4 tecknen.

DIFFERENCE

DIFFERENCE() är en skalär funktion som används för att mäta likheten mellan två strängar med hjälp av en annan SQL-strängfunktion, som är SOUNDEX(). Först appliceras SOUNEDX () på varje inmatning och sedan görs en likhetskontroll över dessa resultat. Denna funktion returnerar ett heltal mellan 0 och 4. När detta värde är närmare 4, är ingångarna mycket lika.,4a7efd55″>

1
välj skillnad(’hej’,’cykel’), difference(’hello’, ’hello world’)

resultat:

1, 4

från resultaten ovan, eftersom Soundex () – funktionen returnerar samma värde för hello and hello world, då resultatet av hello and hello world.skillnad() funktionen är 4 vilket innebär att de är mycket lika (baserat på Soundex ())., Å andra sidan är resultatet av skillnaden() funktionen för hej och cykel 1 vilket innebär att de inte är lika.

vänster, höger

vänster() och höger() funktioner är en av de mest populära SQL strängfunktioner. De används för att extrahera ett visst antal tecken från vänster eller höger sida av en sträng.,

Example:

1
SELECT LEFT(’Hello World’,5) , RIGHT(’Hello Wolrd’,5)

Result:

Hello, World

LOWER, UPPER

LOWER() and UPPER() functions are another popular SQL string functions that are used to change the character case of an input string., Lägre () används för att ändra bokstaven fallet till ett gemener och övre () används för att ändra fallet av bokstäverna i versaler.,>

1
välj lägre(’hello world’) , Upper(’Hello World’)

resultat:

hello world, Hello world

ltrim, rtrim

de senaste funktionerna som vi kommer att illustrera i den här artikeln är funktionen ltrim() och rtrim (), som används för att ta bort ytterligare mellanslag från vänster eller höger sida av en inmatningssträng.,

exempel:

1
välj rtrim(’Hello ’) , ltrim(’ World’)

resultat:

hej, värld

slutsats

i den här artikeln kan vi med tanke på en översikt över några av de inbyggda SQL-strängfunktionerna i SQL Server, gav vi några exempel och skärmdumpar och vi diskuterade kortfattat de erhållna resultaten.,

  • författare
  • Senaste inlägg
Hadi är en Libanesisk forskare, dataingenjör och Business Intelligence-Utvecklare.
han har arbetat med SQL Server i mer än 10 år. Han är en av de bästa ETL och SQL Server Integration Services bidragsgivare på Stackoverflow.com
Hadi verkligen gillar att lära sig nya saker varje dag och dela med sig av sin kunskap.,
Visa alla inlägg av Hadi Fadlallah

Senaste inlägg av Hadi Fadlallah (se alla)
  • komma igång med Neo4j graph database – 5 februari 2021
  • importera data från MongoDB till SQL Server med SSIS – 25 December, 2020
  • bygga databaser med Biml – 14 oktober 2020

Lämna ett svar

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