I MySQL, SUBSTR()
funktion returnerar en delsträng som börjar från den angivna positionen.
Båda SUBSTR()
och MID()
är synonymer till SUBSTRING()
.
Syntax
Den grundläggande syntaxen ser ut så här:
SUBSTR(str,pos,len)
Här, str
är strängen, pos
är positionen att starta delsträngen från, och len
är ett valfritt argument som bestämmer antalet tecken som ska returneras från den startpositionen.
Det finns flera varianter av hur du kan använda den här funktionen, så hela utbudet av syntaxer ser ut så här:
SUBSTR(str,pos) SUBSTR(str FROM pos) SUBSTR(str,pos,len) SUBSTR(str FROM pos FOR len)
Dessa visas i följande exempel.
Exempel 1 – Grundläggande användning
Här är ett exempel på SUBSTR(str,pos)
syntax:
SELECT SUBSTR('I play the drums', 3) Result;
Resultat:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
I det här exemplet tar jag en delsträng från strängen, med början på position 3.
Exempel 2 – Användning av FROM-klausulen
Så här gör du samma sak, men den här gången använder du SUBSTR(str FROM pos)
syntax:
SELECT SUBSTR('I play the drums' FROM 3) Result;
Resultat:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
Så vi får samma resultat.
I det här fallet, FROM
är standard SQL. Observera att den här syntaxen inte använder kommatecken.
Exempel 3 – Ange en längd
I det här exemplet använder jag SUBSTR(str,pos,len)
syntax:
SELECT SUBSTR('I play the drums', 3, 4) Result;
Resultat:
+--------+ | Result | +--------+ | play | +--------+
Här anger jag att den returnerade delsträngen ska vara 4 tecken lång.
Exempel 4 – Ange en längd (med FOR-satsen)
I det här exemplet använder jag SUBSTR(str FROM pos FOR len)
syntax:
SELECT SUBSTR('I play the drums' FROM 3 FOR 5) Result;
Resultat:
+--------+ | Result | +--------+ | play | +--------+
Så den här gången använde vi standard SQL för att uppnå samma resultat