Sql substring: SUBSTRING (Transact-SQL) — SQL Server

Функция MySQL SUBSTRING()

❮ Предыдущая
❮ Функции MySQL
Далее ❯

Пример

Извлечь подстроку из строки (начать с позиции 5, извлечь 3
символов):

SELECT SUBSTRING(«Учебник по SQL», 5, 3) AS ExtractString;

Попробуйте сами »


Определение и использование

Функция SUBSTRING() извлекает подстроку из строки (начиная с любого
должность).

Примечание: Функции SUBSTR() и MID()
равно SUBSTRING()
функция.

Синтаксис

ПОДСТРОКА( строка , начало , длина )

ИЛИ:

ПОДСТРОКА( строка ОТ начало ДЛЯ длина )

Значения параметров

Параметр Описание
строка Обязательно. Строка для извлечения из
начало Обязательно. Начальное положение. Может быть как положительным, так и отрицательным числом.
Если это положительное число, эта функция извлекает с начала
нить. Если это отрицательное число, эта функция извлекает из
конец строки
длина Дополнительно. Количество символов для извлечения. Если опустить, весь
будет возвращена строка (с позиции start )

Технические детали

Работает в: Из MySQL 4.0

Другие примеры

Пример

Извлечь подстроку из текста в столбце (начать с позиции 2, извлечь 5
символов):

ВЫБРАТЬ ПОДСТРОКУ(ИмяЗаказчика,
2, 5) AS ExtractString
ОТ Заказчиков;

Попробуйте сами »

Пример

Извлечь подстроку из строки (начать с конца, в позиции -5, извлечь
5
символов):

SELECT SUBSTRING(«Учебник по SQL», -5, 5) AS ExtractString;

Попробуйте сами »

❮ Предыдущая
❮ Функции MySQL
Следующий ❯

ВЫБОР ЦВЕТА



Лучшие учебники

Учебник по HTML
Учебное пособие по CSS
Учебное пособие по JavaScript
Учебное пособие
Учебное пособие по SQL
Учебное пособие по Python
Учебное пособие по W3. CSS
Учебное пособие по Bootstrap
Учебное пособие по PHP
Учебное пособие по Java
Учебное пособие по C++
Учебное пособие по jQuery
Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery

Основные примеры

Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery

2 |
О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения.
Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания.
Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования,
куки-файлы и политика конфиденциальности.

Copyright 1999-2022 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.

Лучший способ извлечения набора символов

У каждого человека, работающего с данными, свой подход к извлечению данных в зависимости от того, как они хотят их использовать. SQL стремится предоставить нам способ извлечения данных в любом формате с помощью инструментов, таких как функция подстроки SQL. Эта функция позволяет нам извлекать определенные символы из строки.

Что такое подстрока в SQL?

SUBSTRING() — это функция, которая позволяет нам извлекать части строк, известные как подстроки. Строки, которые мы хотим извлечь, могут быть указаны в самой функции или могут быть частью столбцов таблицы.

С помощью этой функции мы можем извлечь из одной строки столько подстрок, сколько захотим.

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

Синтаксис для использования функции подстроки SQL

SUBSTRING(строка, начало, длина)

  • Строковый параметр используется для указания элемента, из которого мы хотим извлечь символы.
  • Параметр start используется для определения начальной позиции строки. Если это положительное число, функция начинается с начала строки, а если это отрицательное число, функция начинается с конца строки.

ПРИМЕЧАНИЕ. Первому символу строки из n символов присваивается значение 1, а последнему символу присваивается значение n. С конца последнему символу присваивается значение -1, а первому символу присваивается значение -n.

  • Необязательный параметр длины используется для указания количества символов, которое мы хотим извлечь из строки. Без этого возвращается вся строка с начальной позиции.

Например, SUBSTRING(‘ABCDEF’, 2, 3) возвращает ‘BCD’.

Важные моменты, которые следует помнить

  • Функция возвращает ошибку, если параметр длины не является положительным числом.
  • Если начальная позиция, указанная в параметре start, больше длины исходной строки, функция возвращает пробел.
  • Значение параметра длины может превышать длину исходной строки. В этом случае вся строка будет возвращена из указанной начальной позиции.
  • Обязательно указать строку и стартовые параметры, без которых функция вернет синтаксическую ошибку.

Применим рассмотренные выше концепции к строкам и столбцам таблицы.

Функцию SUBSTRING() можно использовать с командой SELECT для извлечения подстрок.

  • Чтобы извлечь пять символов из третьего символа указанной строки:

Любые пробелы также классифицируются как символы.

Это приведет к следующему:

Чтобы извлечь четыре символа с седьмой позиции с конца указанной строки, вам необходимо ввести следующее:

Как мы видим, «o» — это начальный символ извлекаемой четырехсимвольной строки.

Приведенный выше запрос приведет к следующему:

Чтобы извлечь всю строку из второго символа указанной строки, введите следующий код:

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

С помощью этой функции мы также можем извлекать символы из столбцов таблицы. Давайте посмотрим, как это делается.

Извлечение подстрок из столбцов таблицы

Синтаксис извлечения подстрок из столбцов таблицы следующий:

ВЫБЕРИТЕ ПОДСТРОКУ (имя_столбца, начало, длина)

ОТ имя_таблицы

ГДЕ [условие]

  • Подстрока извлекается из каждой строки столбца, указанного в параметре column_name.
  • В предложении WHERE можно указать определенные условия для фильтрации извлекаемых строк.

ПРИМЕЧАНИЕ. Предложение WHERE является необязательным.

В качестве примера возьмем следующую таблицу:

  • Чтобы извлечь последние три цифры «Dept_ID» для каждого сотрудника из этой таблицы, мы будем использовать следующий запрос:

Это приведет к следующему:

Кроме того, мы также можем использовать следующий запрос для получения указанного выше результата:

Здесь мы указали начальную позицию как третью позицию с конца. Нам не нужно указывать длину, так как нам нужны все символы из указанной начальной позиции.

Это приведет к следующему:

Это показывает, что результат совпадает с результатом предыдущего запроса.

  • Чтобы извлечь идентификатор и первую букву имени каждого сотрудника с зарплатой выше 30000, используйте следующий код:

Это приведет к:

Условие, указанное в предложении WHERE приведенного выше запроса, отфильтровало количество возвращаемых строк.

  • Давайте посмотрим, что происходит, когда начальная позиция больше, чем длина строки.

Чтобы извлечь все идентификаторы сотрудников из третьего символа, мы введем следующее:

Это приведет к следующему:

Для всех строк возвращается пробел, так как длина каждой из этих записей составляет два символа.

Иногда нам нужно всего несколько символов из всей строки данных, и функция подстроки SQL помогает выполнить эту задачу.