V MySQL, SUBSTRING() Funkce vám umožňuje vrátit podřetězec z řetězce. Tuto funkci tedy můžete použít k odebrání části textu z větší části textu.
Existuje několik různých způsobů, jak použít SUBSTRING() a to ovlivňuje syntaxi.
Příklad 1 – Základní použití
Nejzákladnější použití vypadá takto:
SUBSTRING(str,pos)
V tomto případě str je řetězec a pos je pozice, ze které má začít podřetězec.
Zde je příklad této základní syntaxe:
SELECT SUBSTRING('Cats and dogs', 6); Výsledek:
and dogs
V tomto příkladu vezmeme podřetězec z řetězce Cats and dogs , začínající na pozici 6.
Příklad 2 – Použití klauzule FROM
Jiný způsob, jak to udělat:
SUBSTRING(str FROM pos)
V tomto případě FROM je standardní SQL. Všimněte si, že tato syntaxe nepoužívá čárky.
Zde je stejný příklad jako předchozí, ale zde jsme jej změnili tak, aby používal FROM syntaxe:
SELECT SUBSTRING('Cats and dogs' FROM 6); Výsledek:
and dogs
Takže dostaneme stejný výsledek.
Příklad 3 – Přidejte délku podřetězce
Můžete také přidat délku:
SUBSTRING(str,pos,len)
Zde len je délka podřetězce, který se má vrátit. To nám umožňuje vrátit podřetězec se zadanou délkou.
Zde je příklad, jak to udělat:
SELECT SUBSTRING('Cats and dogs', 6, 3); Výsledek:
and
V tomto případě tedy zvolíme návrat pouze 3 znaků z výchozí pozice.
Příklad 4 – Použití FOR
Konečně při použití FROM , můžete také přidat FOR poskytnout délku.
SUBSTRING(str FROM pos FOR len)
A zde je stejný příklad jako předchozí, kromě toho, že zde používáme FROM klauzule a také FOR :
SELECT SUBSTRING('Cats and dogs' FROM 6 FOR 3); Výsledek:
and
Stejně jako v předchozím příkladu se zde vyberou 3 znaky z počáteční pozice.
Příklad 5 – Počítání pozpátku
Můžete také použít zápornou hodnotu pro počáteční pozici. V tomto případě se pozice bere zpětně od konce řetězce:
SELECT SUBSTRING('Cats and dogs', -6); Výsledek:
d dogs
Příklad 6 – Funkce SUBSTR()
Můžete také použít SUBSTR() což je synonymum pro SUBSTRING() . Jakýkoli z předchozích příkladů by tedy mohl být přepsán pomocí SUBSTR() místo toho.
Příklad:
SELECT SUBSTR('Cats and dogs', 6); Výsledek:
and dogs
Příklad 7 – Funkce MID()
A existuje ještě další synonymum pro SUBSTRING() – MID() funkce. Jakýkoli z předchozích příkladů by tedy mohl být přepsán pomocí MID() místo toho.
Příklad:
SELECT MID('Cats and dogs', 6); Výsledek:
and dogs