LEN (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)Titik akhir analitik SQL di Microsoft FabricWarehouse di Microsoft Fabric

Mengembalikan jumlah karakter ekspresi string yang ditentukan, tidak termasuk spasi berikutnya.

Catatan

Untuk mengembalikan jumlah byte yang digunakan untuk mewakili ekspresi, gunakan fungsi DATALENGTH .

Konvensi sintaks transact-SQL

Sintaksis

LEN ( string_expression )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

string_expression
Adalah ekspresi string yang akan dievaluasi. string_expression dapat berupa konstanta, variabel, atau kolom dari karakter atau data biner.

Jenis Kembalian

bigint jika ekspresi adalah jenis data varchar(max), nvarchar(max) atau varbinary(max) ; jika tidak, int.

Jika Anda menggunakan kolase SC, nilai bilangan bulat yang dikembalikan menghitung pasangan pengganti UTF-16 sebagai satu karakter. Untuk informasi selengkapnya, lihat Dukungan Kolate dan Unicode.

Keterangan

LEN mengecualikan spasi berikutnya. Jika itu adalah masalah, pertimbangkan untuk menggunakan fungsi DATALENGTH (Transact-SQL) yang tidak memangkas string. Jika memproses string unicode, DATALENGTH akan mengembalikan angka yang mungkin tidak sama dengan jumlah karakter. Contoh berikut menunjukkan LEN dan DATALENGTH dengan spasi berikutnya.

  DECLARE @v1 VARCHAR(40),  
    @v2 NVARCHAR(40);  
SELECT   
@v1 = 'Test of 22 characters ',   
@v2 = 'Test of 22 characters ';  
SELECT LEN(@v1) AS [VARCHAR LEN] , DATALENGTH(@v1) AS [VARCHAR DATALENGTH];  
SELECT LEN(@v2) AS [NVARCHAR LEN], DATALENGTH(@v2) AS [NVARCHAR DATALENGTH];  

Catatan

Gunakan LEN untuk mengembalikan jumlah karakter yang dikodekan ke dalam ekspresi string tertentu, dan DATALENGTH untuk mengembalikan ukuran dalam byte untuk ekspresi string tertentu. Output ini mungkin berbeda tergantung pada jenis data dan jenis pengodean yang digunakan dalam kolom. Untuk informasi selengkapnya tentang perbedaan penyimpanan antara jenis pengodean yang berbeda, lihat Collation dan Dukungan Unicode.

Contoh

Contoh berikut memilih jumlah karakter dan data untuk FirstName orang yang berada di Australia. Contoh ini menggunakan database AdventureWorks.

SELECT LEN(FirstName) AS Length, FirstName, LastName   
FROM Sales.vIndividualCustomer  
WHERE CountryRegionName = 'Australia';  
GO  

Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)

Contoh berikut mengembalikan jumlah karakter dalam kolom FirstName dan nama depan dan belakang karyawan yang terletak di Australia.

USE AdventureWorks2022  
GO  
SELECT DISTINCT LEN(FirstName) AS FNameLength, FirstName, LastName   
FROM dbo.DimEmployee AS e  
INNER JOIN dbo.DimGeography AS g   
    ON e.SalesTerritoryKey = g.SalesTerritoryKey   
WHERE EnglishCountryRegionName = 'Australia';  

Berikut adalah hasil yang ditetapkan.

FNameLength  FirstName  LastName  
-----------  ---------  ---------------  
4            Lynn       Tsoflias

Lihat Juga

DATALENGTH (Transact-SQL)
CHARINDEX (T-SQL)
PATINDEX (Transact-SQL)
KIRI (T-SQL)
KANAN (T-SQL)
Tipe Data (Transact-SQL)
Fungsi String (Transact-SQL)