DATALENGTH (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Diese Funktion gibt die Anzahl von Bytes zurück, die zum Darstellen eines Ausdrucks verwendet werden.
Hinweis
Um die Anzahl von Zeichen in einem Zeichenfolgenausdruck zurückzugeben, verwenden Sie die LEN-Funktion.
Transact-SQL-Syntaxkonventionen
Syntax
DATALENGTH ( expression )
Argumente
expression
Ein Ausdruck mit beliebigem Datentyp.
Rückgabetypen
bigint, wenn expression den Datentyp nvarchar(max), varbinary(max) oder varchar(max) hat; andernfalls int.
Hinweise
DATALENGTH
ist besonders beim Einsatz mit Datentypen nützlich, die Daten variabler Länge speichern können, z. B.:
- image
- ntext
- nvarchar
- text
- varbinary
- varchar
Für einen NULL-Wert gibt DATALENGTH
NULL zurück.
Hinweis
Kompatibilitätsgrade können sich auf Rückgabewerte auswirken. Weitere Informationen zu den Kompatibilitätsgraden finden Sie unter ALTER DATABASE-Kompatibilitätsgrad (Transact-SQL).
Hinweis
Verwenden Sie LEN, um die Anzahl von Zeichen zurückzugeben, die in einem angegebenen Zeichenfolgenausdruck codiert sind. Mit DATALENGTH geben Sie die Größe in Byte für einen angegebenen Zeichenfolgenausdruck zurück. Diese Ausgaben können sich unterscheiden, je nachdem, welcher Datentyp und welche Art von Codierung in der Spalte verwendet werden. Weitere Informationen zu Speicherunterschieden zwischen verschiedenen Codierungstypen finden Sie unter Sortierung und Unicode-Unterstützung.
Beispiele
In diesem Beispiel wird nach der Länge der Name
-Spalte in der Product
-Tabelle gesucht:
USE AdventureWorks2022
GO
SELECT length = DATALENGTH(EnglishProductName), EnglishProductName
FROM dbo.DimProduct
ORDER BY EnglishProductName;
GO
Weitere Informationen
LEN (Transact-SQL)
CAST und CONVERT (Transact-SQL)
Datentypen (Transact-SQL)
Systemfunktionen (Transact-SQL)