Функция SQL Server LEN()

В этом руководстве вы узнаете, как использовать функцию SQL Server LEN() для возврата количества символов входной строки.

Обзор функции SQL Server LEN()

Функция LEN() возвращает количество символов входной строки, исключая конечные пробелы.

Вот синтаксис функции LEN():

LEN(string_expression)

В этом синтаксисе string_expression может быть строкой литеральных символов, строковым выражением или символьным или двоичным столбцом.

Функция LEN() возвращает значение, тип данных которого — BIGINT, если string_expression имеет тип данных VARCHAR(max), NVARCHAR(max) или VARBINARY(max); в противном случае — INT.

Примеры функции LEN() SQL Server

Давайте рассмотрим несколько примеров использования функции LEN().

1) Использование функции LEN() с буквальной строкой

В следующем примере функция LEN используется для возврата количества символов строки SQL Server LEN и той же строки с конечными пробелами.

SELECT 
  LEN('SQL Server LEN') length, 
  LEN('SQL Server LEN   ') length_with_trailing_blanks;

Вот что получилось:

length      length_with_trailing_blanks
----------- ---------------------------
14          14

Выходные данные указывают на то, что функция LEN() не учитывает конечные пробелы.

Если вы хотите учесть конечные пробелы, вы можете использовать функцию DATALENGTH(). Например:

SELECT 
  DATALENGTH('SQL Server LEN') data_length, 
  DATALENGTH('SQL Server LEN   ') data_length_with_trailing_blanks;

Выход:

data_length data_length_with_trailing_blanks
----------- --------------------------------
14          17

2) Использование функции LEN() с данными

Мы будем использовать таблицу production.products из примера базы данных.

продукты

Следующий запрос извлекает названия продуктов и их длину с помощью функции LEN():

SELECT 
  product_name, 
  LEN(product_name) product_name_length 
FROM 
  production.products 
ORDER BY 
  product_name_length DESC;

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

Пример функции LEN SQL Server

3) Использование функции LEN() с NULL

В следующем примере используется функция LEN() с NULL, что приводит к NULL:

SELECT 
  LEN(NULL) result;

Выход:

result
-----------
NULL

Краткое содержание

  • Используйте функцию LEN(), чтобы вернуть количество символов в строке, исключая конечные пробелы.
Мирослав С.

Автор статей, ИБ-специалист