V MySQL, SUBSTR()
funkce vrací podřetězec začínající od zadané pozice.
Oba SUBSTR()
a MID()
jsou synonyma SUBSTRING()
.
Syntaxe
Základní syntaxe vypadá takto:
SUBSTR(str,pos,len)
Zde str
je řetězec, pos
je pozice, ze které má začít podřetězec, a len
je volitelný argument, který určuje počet znaků, které se mají vrátit z této výchozí pozice.
Existuje několik variant, jak můžete tuto funkci použít, takže celý rozsah syntaxí vypadá takto:
SUBSTR(str,pos) SUBSTR(str FROM pos) SUBSTR(str,pos,len) SUBSTR(str FROM pos FOR len)
Ty jsou demonstrovány v následujících příkladech.
Příklad 1 – Základní použití
Zde je příklad SUBSTR(str,pos)
syntaxe:
SELECT SUBSTR('I play the drums', 3) Result;
Výsledek:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
V tomto příkladu vezmu podřetězec z řetězce počínaje pozicí 3.
Příklad 2 – Použití klauzule FROM
Zde je návod, jak provést totéž, ale tentokrát pomocí SUBSTR(str FROM pos)
syntaxe:
SELECT SUBSTR('I play the drums' FROM 3) Result;
Výsledek:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
Takže dostaneme stejný výsledek.
V tomto případě FROM
je standardní SQL. Všimněte si, že tato syntaxe nepoužívá čárky.
Příklad 3 – Zadejte délku
V tomto příkladu používám SUBSTR(str,pos,len)
syntaxe:
SELECT SUBSTR('I play the drums', 3, 4) Result;
Výsledek:
+--------+ | Result | +--------+ | play | +--------+
Zde specifikuji, že vrácený podřetězec by měl mít 4 znaky.
Příklad 4 – Zadejte délku (pomocí klauzule FOR)
V tomto příkladu používám SUBSTR(str FROM pos FOR len)
syntaxe:
SELECT SUBSTR('I play the drums' FROM 3 FOR 5) Result;
Výsledek:
+--------+ | Result | +--------+ | play | +--------+
Tentokrát jsme tedy použili standardní SQL, abychom dosáhli stejného výsledku