LEFT (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 のサロゲート文字を 1 文字としてカウントします。
戻り値の型
character_expression が Unicode 以外の文字データ型である場合、varchar を返します。
character_expression が Unicode 文字データ型である場合は、nvarchar を返します。
説明
SC の照合順序を使用する場合、integer_expression パラメーターでは、UTF-16 のサロゲート ペアが 1 文字としてカウントされます。 詳細については、「照合順序と Unicode のサポート」を参照してください。
使用例
A. 列を指定した LEFT を使用する
次の例では、各製品名の左端の 5 文字を返します。
USE AdventureWorks2012;
GO
SELECT LEFT(Name, 5)
FROM Production.Product
ORDER BY ProductID;
GO
B. 文字列を指定した LEFT を使用する
次の例では、LEFT を使用して abcdefg という文字列の左端の 2 文字を返します。
SELECT LEFT('abcdefg',2)
GO
以下に結果セットを示します。
--
ab
(1 row(s) affected)