分享方式:


LEFT (Transact-SQL)

適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲

傳回字元字串含指定字元數的左側部分。

Transact-SQL 語法慣例

語法

LEFT ( character_expression , integer_expression )  

引數

character_expression
這是字元或二進位資料的運算式character_expression 可以是常數、變數或資料行。 character_expression 可以是除了 textntext 之外的任何資料類型,可隱含地轉換為 varcharnvarchar。 否則,請使用 CAST 函數來明確轉換 character_expression

注意

string_expressionbinaryvarbinary 類型,LEFT 將會隱含轉換為 varchar,且因此不會保留二進位輸入。

integer_expression
這是一個指定將傳回的 character_expression 字元數的正整數。 如果 integer_expression 是負數,則會傳回錯誤。 如果 integer_expressionbigint 類型且包含大數值,則 character_expression 必須屬於大型資料類型,例如 varchar(max)

integer_expression 參數會將 UTF-16 代理字元視為一個字元。

傳回型別

character_expression 是非 Unicode 字元資料類型時,則傳回 varchar

character_expression 是 Unicode 字元資料類型時,則傳回 nvarchar

備註

當使用 SC 定序時,integer_expression 參數會將 UTF-16 代理字組視為一個字元。 如需詳細資訊,請參閱 Collation and Unicode Support

範例

A. 使用 LEFT 搭配資料行

下列範例會傳回 AdventureWorks2022 資料庫中每個產品名稱 Product 的五個最左邊字元。

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

B. 使用 LEFT 搭配字元字串

下列範例會利用 LEFT 來傳回字元字串 abcdefg 最左側兩個字元。

SELECT LEFT('abcdefg',2);  
GO  

結果集如下所示。

--   
ab   
  
(1 row(s) affected)  

範例:Azure Synapse Analytics 和 Analytics Platform System (PDW)

C. 使用 LEFT 搭配資料行

下列範例會傳回每個產品名稱的最左側五個字元。

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

D. 使用 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)