LEFT (Transact-SQL)

Применимо к: даSQL Server (все поддерживаемые версии) ДаБаза данных SQL Azure ДаУправляемый экземпляр SQL Azure даAzure Synapse Analytics даПараллельное хранилище данных

Возвращает указанное число символов символьного выражения слева.

Значок ссылки на раздел Синтаксические обозначения в Transact-SQL

Синтаксис

LEFT ( character_expression , integer_expression )  

Примечание

Ссылки на описание синтаксиса Transact-SQL для SQL Server 2014 и более ранних версий, см. в статье Документация по предыдущим версиям.

Аргументы

character_expression
Выражение символьных или двоичных данных. character_expression может быть константой, переменной или столбцом. character_expression может иметь любой тип данных, который может быть неявно преобразован в varchar или nvarchar, кроме text или ntext. В противном случае используйте функцию CAST для явного преобразования типа аргумента character_expression.

Примечание

Если string_expression имеет тип binary или varbinary, LEFT выполняет неявное преобразование в тип varchar и, следовательно, двоичные входные данные не сохраняются.

integer_expression
Положительное целое число, указывающее количество символов выражения character_expression, которое будет возвращено. Если аргумент integer_expression отрицателен, возвращается ошибка. Если аргумент integer_expression имеет тип bigint и содержит большое значение, аргумент character_expression должен иметь длинный тип данных, например varchar(max) .

Параметр integer_expression обрабатывает суррогатный символ UTF-16 как один символ.

Типы возвращаемых данных

Возвращает значение типа varchar, если character_expression имеет символьный тип данных, отличный от Юникода.

Возвращает значение типа nvarchar, если character_expression имеет символьный тип данных Юникода.

Remarks

При использовании параметров сортировки SC в параметре integer_expression суррогатная пара UTF-16 рассматривается как один символ. Дополнительные сведения см. в статье Collation and Unicode Support.

Примеры

A. Применение функции LEFT со столбцом

В следующем примере возвращается по пять первых символов от каждого из названий продуктов в таблице Product базы данных AdventureWorks2012.

SELECT LEFT(Name, 5)   
FROM Production.Product  
ORDER BY ProductID;  
GO  

Б. Применение функции LEFT с символьной строкой

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

SELECT LEFT('abcdefg',2);  
GO  

Результирующий набор:

--   
ab   
  
(1 row(s) affected)  

Примеры: Azure Synapse Analytics и Система платформы аналитики (PDW)

В. Применение функции LEFT со столбцом

В следующем примере возвращаются пять первых символов от каждого из названий продуктов.

-- Uses AdventureWorks  
  
SELECT LEFT(EnglishProductName, 5)   
FROM dbo.DimProduct  
ORDER BY ProductKey;  

Г. Применение функции LEFT с символьной строкой

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

-- Uses AdventureWorks  
  
SELECT LEFT('abcdefg',2) FROM dbo.DimProduct;  

Результирующий набор:

--   
ab  

См. также:

LTRIM (Transact-SQL)
RIGHT (Transact-SQL)
RTRIM (Transact-SQL)
STRING_SPLIT (Transact-SQL)
SUBSTRING (Transact-SQL)
TRIM (Transact-SQL)
Функции CAST и CONVERT (Transact-SQL)
Типы данных (Transact-SQL)
Строковые функции (Transact-SQL)