sql >> Databasteknik >  >> RDS >> Database

Hur hämtar man en uppsättning tecken med SUBSTRING i SQL?

Structured Query Language syftar till att ge användare möjligheten att hämta data i ett format de vill ha. I den här artikeln om en delsträng i SQL kommer jag att visa dig hur du extraherar en uppsättning tecken från en sträng. Följande ämnen kommer att behandlas i den här artikeln:

  • Vad är SQL?
  • Vad är SUBSTRING i SQL?
    1. Syntax:
  • SUBSTRING Exempel:
    1. Använd SUBSTRING på Literals
    2. Använd SUBSTRING på tabell med villkor
    3. ANVÄND SUBSTRING på kapslade frågor

Låt oss komma igång!

Vad är SQL?

SQL eller Structured Query Language är utvecklat av Donald D.Chamberlin och används för att hantera, komma åt och hämta data i en databas. Den består av olika kommandon uppdelade i 4 kategorier (DDL, DML, DCL och TCL). SUBSTRING är ett sådant kommando i SQL, som används för att hämta en uppsättning tecken från den angivna strängen.

Låt oss sedan i den här artikeln gå djupare in i vad som är SUBSTRING i SQL och hur man använder det.

Vad är SUBSTRING i SQL?

SUBSTRING i SQL är en funktion som används för att hämta tecken från en sträng. Med hjälp av denna funktion kan du hämta valfritt antal delsträngar från en enda sträng.

Syntax:

SUBSTRING(string, starting_value, length)

Här,

  • Sträng – Representerar strängen från vilken du måste extrahera en uppsättning tecken.
  • Startvärde – Detta representerar strängens startposition. Det första tecknet i strängen får värdet 1.
  • Längd – Representerar antalet tecken som du vill extrahera.

Se bilden nedan för bildrepresentationen av SUBSTRING i SQL.

Obs!

  • SUBSTRING-funktionen ger ett felmeddelande om längdparametern är negativ.
  • Längden på tecknen kan överskrida den maximala längden på originalsträngen. I ett sådant scenario kommer hela strängen att extraheras från den nämnda startpositionen.
  • Alla tre fälten är obligatoriska i denna funktion
  • Om startpositionen är större än det maximala antalet tecken i strängen returneras ingenting.

Eftersom du har förstått syntaxen och reglerna för att använda SUBSTRING i SQL, låt oss nu diskutera de olika sätten att använda den.

SUBSTRING Exempel:

För din bättre förståelse har jag delat upp exemplen i följande avsnitt:

    1. Använd SUBSTRING på Literals
    2. Använd SUBSTRING på tabell med villkor
    3. ANVÄND SUBSTRING på kapslade frågor

Låt oss titta närmare på var och en av dem.

Använd SUBSTRING på Literals

När du använder SUBSTRING i SQL för bokstaver, extraherar den en delsträng från den angivna strängen med en längd och start från det initiala värdet som nämns av användaren.

Exempel 1

Skriv en fråga för att extrahera en delsträng från strängen "Edureka", med början på 2-tecken och måste innehålla 4 tecken.

 
SELECT SUBSTRING(‘Edureka’, 2, 4);

Utdata

dure

Exempel 2

Skriv en fråga för att extrahera en delsträng med 8 tecken, med början från de 2 tecknen från strängen "Edureka". Här, om du observerar, måste vi extrahera en delsträng med längden större än uttryckets maximala längd.

SELECT SUBSTRING(‘Edureka’, 2, 8);

Utdata

dureka

Använd SUBSTRING på tabell med villkor

Tänk på tabellen nedan med tabellnamnet Kunder.

Kund-ID

Kundnamn

Anpassad e-post

1

Anuj

[email protected]

2

Akash

[email protected]

3

Mitali

[email protected]

4

Sonali

[email protected]

5

Sanjay

[email protected]

Om du vill veta hur man skapar en tabell och infogar värden i den, kan du hänvisa till artikeln om CREATE och INSERT-satsen.

Exempel 1

Skriv en fråga för att extrahera en delsträng med 3 tecken, med början på 1 tecknet för kundnamnet "Akash".

SELECT SUBSTRING(CustName, 1, 3)
FROM Customers
WHERE CustName = ‘Akash’;

Utdata

Aka

Exempel 2

Skriv en fråga för att extrahera en delsträng till slutet av strängen, med början på 2-tecken från CustName "Akash".

SELECT SUBSTRING(CustName, 2)
FROM Customers
WHERE CustName = ‘Akash’;

Utdata

kash

Exempel 3

Skriv en fråga för att extrahera en delsträng med 3 tecken, börja med de 2 tecknen för CustName och ordna det enligt CustName.

SELECT CustName
FROM Customers
ORDER BY SUBSTRING(CustName, 2, 3);

Utdata:

anj
ita
kas
nuj
ona

ANVÄND SUBSTRING på kapslade frågor

I det här avsnittet av den här artikeln om en delsträng i SQL, låt oss förstå hur man använder funktionen SUBSTRING på kapslade frågor. För att förstå detsamma, låt oss överväga Kundtabellen, som vi har övervägt ovan.

Exempel:

Skriv en fråga för att extrahera hela domänen från kolumnen CustEmail i tabellen Kunder.

SELECT
    CustEmail,
    SUBSTRING(
        CustEmail,
        CHARINDEX('@', CustEmail)+1,
        LEN(CustEmail)-CHARINDEX('@', CustEmail)
    ) Domain
FROM
   Customers
ORDER BY
    CustEmail;

Utdata :

CustEmail

Domän

[email protected]

abc.com

[email protected]

xyz.com

[email protected]

pqr.com

[email protected]

abc.com

[email protected]

xyz.com

Eftersom domänen startar efter @-tecknet har vi använt CHARINDEX()-funktionen för att söka efter @-tecken i CustEmail-kolumnen. Sedan används resultatet av denna funktion för att bestämma startpositionen och längden på delsträngen som ska extraheras.

Så, folk det är så, du kan använda SUBSTRING-funktionen i SQL för att hämta data. Med det kommer vi till slutet av den här artikeln om SUBSTRING i SQL. Jag hoppas att du tyckte att den här artikeln var informativ.

Om du vill lära dig mer om MySQL och lär känna denna relationsdatabas med öppen källkod, kolla sedan in vår MySQL DBA-certifieringsutbildning som kommer med instruktörsledd liveutbildning och verklig projektupplevelse. Den här utbildningen hjälper dig att förstå MySQL på djupet och hjälper dig att behärska ämnet.

Har du en fråga till oss? Nämn det i kommentarsfältet i den här artikeln så återkommer jag till dig.


  1. Hantering av frödata i R12.2 online patchning

  2. kopiera databasfil från /tillgångar till /data/datamappen i filutforskaren - Android

  3. Kom ihåg detta när du formaterar en TIME-datatyp i SQL Server (T-SQL)

  4. Kör endast en utlösare när vissa kolumner är uppdaterade (SQL-server)