Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL-Datenbank
Verwaltete Azure SQL-Instanz
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL-Analyseendpunkt in Microsoft Fabric
Lagerhaus in Microsoft Fabric
SQL-Datenbank in Microsoft Fabric
Gibt die Anzahl von Zeichen im angegebenen Zeichenfolgenausdruck zurück, wobei nachstehende Leerzeichen ausgeschlossen werden.
Hinweis
Verwenden Sie die DATALENGTH-Funktion, um die Anzahl von Bytes zurückzugeben, die zur Darstellung eines Ausdrucks verwendet werden.
Transact-SQL-Syntaxkonventionen
Syntax
LEN ( string_expression )
Argumente
string_expression
Der auszuwertende Zeichenfolgenausdruck . string_expression kann eine Konstante, Variable oder Spalte mit Zeichen- oder Binärdaten darstellen.
Rückgabetypen
bigint , wenn der Ausdruck der Datentypen varchar(max), nvarchar(max) oder varbinary(max) ist; andernfalls int.
Wenn Sie SC-Sortierungen verwenden, zählt der zurückgegebene ganzzahlige Wert UTF-16-Ersatzpaare als einzelnes Zeichen. Weitere Informationen finden Sie unter Sortierungs- und Unicode-Support.
Bemerkungen
LEN schließt nachfolgende Leerzeichen aus. Wenn dies ein Problem ist, sollten Sie die DATALENGTH-Funktion verwenden, wodurch die Zeichenfolge nicht gekürzt wird. Wenn Sie eine Unicode-Zeichenfolge verarbeiten, wird eine Zahl zurückgegeben, DATALENGTH die möglicherweise nicht der Anzahl von Zeichen entspricht. Das folgende Beispiel veranschaulicht LEN und DATALENGTH mit einem nachgestellten Leerzeichen.
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];
Hinweis
Wird verwendet LEN , um die Anzahl von Zeichen zurückzugeben, die in einem bestimmten Zeichenfolgenausdruck codiert sind, und DATALENGTH , um die Größe in Byte für einen bestimmten Zeichenfolgenausdruck zurückzugeben. Diese Ausgaben können je nach Datentyp und Typ der in der Spalte verwendeten Codierung variieren. Weitere Informationen zu Speicherunterschieden zwischen verschiedenen Codierungstypen finden Sie unter Sortierung und Unicode-Unterstützung.
Beispiele
Das folgende Beispiel wählt die Anzahl von Zeichen und die Daten in FirstName für Personen in Australia aus. In diesem Beispiel wird die AdventureWorks-Datenbank verwendet.
SELECT LEN(FirstName) AS Length,
FirstName,
LastName
FROM Sales.vIndividualCustomer
WHERE CountryRegionName = 'Australia';
GO
Beispiele: Azure Synapse Analytics und Analytics-Plattformsystem (PDW)
Das folgende Beispiel gibt die Anzahl der Zeichen in der Spalte FirstName und den Vornamen (FirstName) und den Familiennamen (LastName) von Mitarbeitern zurück, die sich befinden 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';
Hier sehen Sie das Ergebnis.
FNameLength FirstName LastName
----------- --------- ---------------
4 Lynn Tsoflias