Полный цикл в digital

SUBSTRING, MID, SUBSTRING_INDEX - возвращают подстроку из строки

SUBSTRING

Функция SUBSTRING вырезает и возвращает заданное количество символов из строки.

Первым параметром функция принимает поле или строку, вторым параметром - с какой позиции начинать вырезания (нумерация символов начинается с 1), третьем параметром - сколько символов брать.

Третий параметр не является обязательным. Если он не указан, текст будет вырезан с указанной позиции и до конца строки.

Первый синтаксис:

SELECT SUBSTRING(поле, откуда_отрезать, сколько_символов_взять) FROM `имя_таблицы`; -- возможно применение операторов

Альтернативный синтаксис:

SELECT SUBSTRING(поле FROM откуда_отрезать FOR сколько_символов_взять) FROM `имя_таблицы`; -- возможно применение операторов

Третий параметр не обязателен, в этом случае текст будет вырезан с указанной позиции и до конца строки:

SELECT SUBSTRING(поле, откуда_отрезать) FROM `имя_таблицы`; -- возможно применение операторов
SELECT SUBSTRING(поле FROM откуда_отрезать) FROM `имя_таблицы`; -- возможно применение операторов

В данном примере из строки вырезаются и возвращаются 6 символов, начиная с 5-го:

SELECT id, SUBSTRING(text, 5, 6) as text FROM `texts`;

Запрос можно переписать в следующем виде:

SELECT id, SUBSTRING(text FROM 5 FOR 6) as text FROM `texts`;

В данном примере возвращается вся строка до конца, начиная с пятого символа:

SELECT id, SUBSTRING(text, 5) as text FROM `texts`;

Запрос можно переписать в следующем виде:

SELECT id, SUBSTRING(text FROM 5) as text FROM `texts`;

MID

Функция MID вырезает и возвращает заданное количество символов из строки. Первым параметром функция принимает поле или строку, вторым параметром - с какой позиции начинать вырезания (нумерация символов начинается с 1), третьем параметром - сколько символов брать.

Третий параметр не является обязательным. Если он не указан, текст будет вырезан с указанной позиции и до конца строки.

С тремя параметрами:

SELECT MID(поле, откуда_отрезать, сколько_символов_взять) FROM `имя_таблицы`; -- возможно применение операторов

Третий параметр не обязателен:

SELECT MID(поле, откуда_отрезать) FROM `имя_таблицы`; -- возможно применение операторов

В данном примере из строки вырезаются и возвращаются 6 символов, начиная с 5-го:

SELECT id, MID(text, 5, 6) as text FROM `texts`;

В данном примере возвращается вся строка до конца, начиная с пятого символа:

SELECT id, MID(text, 5) as text FROM `texts`;

SUBSTRING_INDEX

Функция SUBSTRING_INDEX возвращает подстроку из строки перед появлениям N вхождений разделителя. Если N положителен, то возвращается все, что находится слева от последнего разделителя (считая слева). Если N отрицателен, то возвращается все, что находится справа от последнего разделителя (считая справа).

SELECT SUBSTRING_INDEX(поле, разделитель, количество_разделителей) FROM `имя_таблицы`; -- возможно применение операторов

В данном примере вернется подстрока перед первым вхождением разделителя '-':

SELECT *, SUBSTRING_INDEX(text, '-', 1) as text FROM `texts`;

В данном примере вернется подстрока перед вторым вхождением разделителя '-':

SELECT *, SUBSTRING_INDEX(text, '-', 2) as text FROM `texts`;

В данном примере вернется подстрока перед третьим вхождением разделителя '-':

SELECT *, SUBSTRING_INDEX(text, '-', 3) as text FROM `texts`;

В данном примере вернется подстрока перед первым с конца вхождением разделителя '-':

SELECT *, SUBSTRING_INDEX(text, '-', -1) as text FROM `texts`;

В данном примере вернется подстрока перед вторым с конца вхождением разделителя '-':

SELECT *, SUBSTRING_INDEX(text, '-', -2) as text FROM `texts`;

В данном примере вернется подстрока перед третьим с конца вхождением разделителя '-':

SELECT *, SUBSTRING_INDEX(text, '-', -3) as text FROM `texts`;
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг