DATALENGTH (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)

Questa funzione restituisce il numero di byte usati per rappresentare un'espressione.

Nota

Per restituire il numero di caratteri in un'espressione stringa, usare la funzione LEN.

Convenzioni di sintassi Transact-SQL

Sintassi

DATALENGTH ( expression )   

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

expression
Espressione con qualsiasi tipo di dati.

Tipi restituiti

bigint se expression è del tipo di dati nvarchar(max), varbinary(max) o varchar(max). In caso contrario, int.

Osservazioni:

DATALENGTH risulta molto utile quando viene usata con tipi di dati che possono archiviare dati a lunghezza variabile, ad esempio:

  • Immagine
  • ntext
  • nvarchar
  • Testo
  • varbinary
  • varchar

Per un valore NULL, DATALENGTH restituisce NULL.

Nota

I livelli di compatibilità possono influire sui valori restituiti. Vedere Livello di compatibilità ALTER DATABASE (Transact-SQL) per informazioni sui livelli di compatibilità supportati.

Nota

Usare LEN per restituire il numero di caratteri codificati in una determinata espressione stringa e DATALENGTH per restituire la dimensione in byte per un'espressione stringa specificata. Questi output possono variare a seconda del tipo di dati e del tipo di codifica usati nella colonna. Per altre informazioni sulle differenze di archiviazione tra tipi di codifica diversi, vedere Regole di confronto e supporto Unicode.

Esempi

Questo esempio trova la lunghezza della colonna Name nella tabella Product:

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

Vedi anche

LEN (Transact-SQL)
CAST e CONVERT (Transact-SQL)
Tipi di dati (Transact-SQL)
Funzioni di sistema (Transact-SQL)