Sdílet prostřednictvím


DÉLKA DAT (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)databáze SQL v Microsoft Fabric

Tato funkce vrací počet bajtů použitých k reprezentaci libovolného výrazu.

Poznámka:

Pro vrácení počtu znaků v řetězcovém výrazu použijte funkci LEN .

Transact-SQL konvence syntaxe

Syntaxe

DATALENGTH ( expression )   

Arguments

expression
Výraz libovolného datového typu.

Návratové typy

bigint , pokud má výraz datový typ nvarchar(max),varbinary(max) nebo varchar(max ); jinak int.

Poznámky

DATALENGTH Velmi užitečné je použití s datovými typy, které mohou uchovávat data s proměnnou délkou, například:

  • image
  • ntext
  • nvarchar
  • text
  • varbinary
  • varchar

Pro hodnotu NULL se DATALENGTH vrací NULL.

Poznámka:

Úrovně kompatibility mohou ovlivnit hodnoty návratu. Více informací o úrovních kompatibility naleznete v ALTER DATABASE Compatibility Level (Transact-SQL ).

Poznámka:

Použijte LEN pro vrácení počtu znaků zakódovaných v daném řetězcovém výrazu a DATALENGTH pro vrácení velikosti v bajtech pro daný řetězcový výraz. Tyto výstupy se mohou lišit v závislosti na typu dat a typu kódování použitém ve sloupci. Pro více informací o rozdílech v úložišti mezi různými typy kódování viz Kolace a podpora Unicode.

Examples

Tento příklad najde délku sloupce Name v Product tabulce:

USE AdventureWorks2022  
GO
SELECT length = DATALENGTH(EnglishProductName), EnglishProductName  
FROM dbo.DimProduct  
ORDER BY EnglishProductName;  
GO  

Viz také

DÉLKA (Transact-SQL)
CAST a CONVERT (Transact-SQL)
Datové typy (Transact-SQL)
Systémové funkce (Transact-SQL)