LEFT (Transact-SQL)
Возвращает указанное число символов символьного выражения слева.
Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск). |
Синтаксические обозначения в Transact-SQL
Синтаксис
LEFT ( character_expression , integer_expression )
Аргументы
character_expression
Выражение символьных или двоичных данных. character_expression может быть константой, переменной или столбцом. Аргумент character_expression может иметь любой тип данных, кроме text и ntext, который может быть неявно преобразован в тип varchar или nvarchar. Пользуйтесь функцией CAST для явного преобразования типа аргумента character_expression.integer_expression
Положительное целое число, указывающее, сколько символов character_expression будет возвращено. Если значение integer_expression является отрицательным, будет возвращена ошибка. Если аргумент integer_expression имеет тип bigint и содержит большое значение, аргумент character_expression должен иметь тип данных, обеспечивающий представление больших значений, такой как varchar(max).Параметр integer_expression рассматривает суррогатный символ UTF-16 как один символ.
Типы возвращаемых данных
Возвращает тип varchar, если аргумент character_expression имеет отличный от Юникода символьный тип данных.
Возвращает тип nvarchar, если аргумент character_expression представляет собой символьный тип данных в Юникоде.
Замечания
При использовании параметров сортировки SC в параметре integer_expression суррогатная пара UTF-16 рассматривается как один символ. Дополнительные сведения см. в разделе Поддержка параметров сортировки и Юникода.
Примеры
А.Применение функции 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)