Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analiz Platformu Sistemi (PDW)
Microsoft Fabric'teki SQL analiz uç noktası
Microsoft Fabric'teki ambar
Microsoft Fabric'teki SQL veritabanı
Belirtilen dize ifadesinin karakter sayısını döndürür; sondaki boşluklar hariç.
Uyarı
Bir ifadeyi temsil etmek için kullanılan bayt sayısını döndürmek için DATALENGTH işlevini kullanın.
Transact-SQL söz dizimi kuralları
Sözdizimi
LEN ( string_expression )
Tartışmalar
string_expression
Değerlendirilecek dize ifadesi . string_expression , karakter veya ikili verilerden oluşan sabit, değişken veya sütun olabilir.
Dönüş türleri
ifadevarchar(max), nvarchar(max)veya varbinary(max) veri türlerindeyse bigint; aksi takdirde, int.
SC harmanlamaları kullanıyorsanız, döndürülen tamsayı değeri UTF-16 vekil çiftlerini tek bir karakter olarak sayar. Daha fazla bilgi için bkz. Harmanlama ve Unicode desteği.
Açıklamalar
LEN sondaki boşlukları dışlar. Bu bir sorunsa, dizeyi kırpmayan DATALENGTH işlevini kullanmayı göz önünde bulundurun. Unicode dizesini işlerseniz, DATALENGTH karakter sayısına eşit olmayan bir sayı döndürür. Aşağıdaki örnekte ve sonunda bir boşluk gösterilmiştir LENDATALENGTH .
DECLARE @v1 AS VARCHAR (40), @v2 AS 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];
Uyarı
Belirli bir dize ifadesinde kodlanmış karakter sayısını döndürmek için ve LENDATALENGTH işlevini kullanarak belirli bir dize ifadesinin bayt cinsinden boyutunu döndür. Bu çıkışlar, sütunda kullanılan veri türüne ve kodlama türüne bağlı olarak farklılık gösterebilir. Farklı kodlama türleri arasındaki depolama farklılıkları hakkında daha fazla bilgi için bkz. Harmanlama ve Unicode desteği.
Örnekler
Aşağıdaki örnek, içinde bulunan FirstNamekişilerin karakter sayısını ve içindeki Australia verileri seçer. Bu örnekte AdventureWorks veritabanı kullanılmaktadır.
SELECT LEN(FirstName) AS Length,
FirstName,
LastName
FROM Sales.vIndividualCustomer
WHERE CountryRegionName = 'Australia';
GO
Örnekler: Azure Synapse Analytics ve Analytics Platform Sistemi (PDW)
Aşağıdaki örnek, sütunundaki FirstName karakter sayısını ve içinde bulunan FirstNameçalışanların adını (LastName) ve aile adını (Australia) döndürür.
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';
Sonuç kümesi aşağıdadır.
FNameLength FirstName LastName
----------- --------- ---------------
4 Lynn Tsoflias