I MySQL er SUBSTR()
funktion returnerer en understreng, der starter fra den angivne position.
Begge SUBSTR()
og MID()
er synonymer til SUBSTRING()
.
Syntaks
Den grundlæggende syntaks lyder sådan her:
SUBSTR(str,pos,len)
Her, str
er strengen, pos
er positionen at starte understrengen fra, og len
er et valgfrit argument, der bestemmer antallet af tegn, der skal returneres fra den startposition.
Der er flere variationer af, hvordan du kan bruge denne funktion, så hele rækken af syntakser ser sådan ud:
SUBSTR(str,pos) SUBSTR(str FROM pos) SUBSTR(str,pos,len) SUBSTR(str FROM pos FOR len)
Disse er vist i de følgende eksempler.
Eksempel 1 – Grundlæggende brug
Her er et eksempel på SUBSTR(str,pos)
syntaks:
SELECT SUBSTR('I play the drums', 3) Result;
Resultat:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
I dette eksempel tager jeg en understreng fra strengen, startende ved position 3.
Eksempel 2 – Brug af FROM-klausulen
Sådan gør du det samme, men denne gang ved at bruge SUBSTR(str FROM pos)
syntaks:
SELECT SUBSTR('I play the drums' FROM 3) Result;
Resultat:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
Så vi får det samme resultat.
I dette tilfælde FROM
er standard SQL. Bemærk, at denne syntaks ikke bruger kommaer.
Eksempel 3 – Angiv en længde
I dette eksempel bruger jeg SUBSTR(str,pos,len)
syntaks:
SELECT SUBSTR('I play the drums', 3, 4) Result;
Resultat:
+--------+ | Result | +--------+ | play | +--------+
Her angiver jeg, at den returnerede understreng skal være 4 tegn lang.
Eksempel 4 – Angiv en længde (ved hjælp af FOR-klausulen)
I dette eksempel bruger jeg SUBSTR(str FROM pos FOR len)
syntaks:
SELECT SUBSTR('I play the drums' FROM 3 FOR 5) Result;
Resultat:
+--------+ | Result | +--------+ | play | +--------+
Så denne gang brugte vi standard SQL for at opnå det samme resultat