В MySQL SUBSTR()
функцията връща подниз, започващ от посочената позиция.
И двете SUBSTR()
и MID()
са синоними на SUBSTRING()
.
Синтаксис
Основният синтаксис е така:
SUBSTR(str,pos,len)
Тук str
е низът, pos
е позицията, от която да започне поднизът, и len
е незадължителен аргумент, който определя броя на знаците за връщане от тази начална позиция.
Има няколко варианта как можете да използвате тази функция, така че пълният набор от синтаксис изглежда така:
SUBSTR(str,pos) SUBSTR(str FROM pos) SUBSTR(str,pos,len) SUBSTR(str FROM pos FOR len)
Те са демонстрирани в следните примери.
Пример 1 – Основна употреба
Ето пример за SUBSTR(str,pos)
синтаксис:
SELECT SUBSTR('I play the drums', 3) Result;
Резултат:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
В този пример вземам подниз от низа, започващ от позиция 3.
Пример 2 – Използване на клаузата FROM
Ето как да направите същото, но този път с помощта на SUBSTR(str FROM pos)
синтаксис:
SELECT SUBSTR('I play the drums' FROM 3) Result;
Резултат:
+----------------+ | Result | +----------------+ | play the drums | +----------------+
Така че получаваме същия резултат.
В този случай FROM
е стандартен SQL. Имайте предвид, че този синтаксис не използва запетаи.
Пример 3 – Посочете дължина
В този пример използвам SUBSTR(str,pos,len)
синтаксис:
SELECT SUBSTR('I play the drums', 3, 4) Result;
Резултат:
+--------+ | Result | +--------+ | play | +--------+
Тук уточнявам, че върнатият подниз трябва да е дълъг 4 знака.
Пример 4 – Посочете дължина (с помощта на клаузата FOR)
В този пример използвам SUBSTR(str FROM pos FOR len)
синтаксис:
SELECT SUBSTR('I play the drums' FROM 3 FOR 5) Result;
Резултат:
+--------+ | Result | +--------+ | play | +--------+
Така че този път използвахме стандартен SQL, за да постигнем същия резултат