DATALENGTH (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Esta función devuelve el número de bytes usados para representar cualquier expresión.

Nota:

Para devolver el número de caracteres de una expresión de cadena, utilice la función LEN.

Convenciones de sintaxis de Transact-SQL

Sintaxis

DATALENGTH ( expression )   

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

expression
Una expression de cualquier tipo de datos.

Tipos de valores devueltos

bigint si expression tiene el tipo de datos nvarchar(max), varbinary(max) o varchar(max); en caso contrario, int.

Observaciones

DATALENGTH resulta muy útil cuando se usa con tipos de datos que pueden almacenar datos de longitud variable, como:

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

Para un valor NULL, DATALENGTH devuelve NULL.

Nota:

Los niveles de compatibilidad pueden afectar a los valores devueltos. Para obtener más información sobre los niveles de compatibilidad, consulte Nivel de compatibilidad de ALTER DATABASE (Transact-SQL).

Nota:

Use LEN para devolver el número de caracteres codificados en una expresión de cadena determinada y DATALENGTH para devolver el tamaño en bytes para una expresión de cadena determinada. Estos resultados pueden diferir en función del tipo de datos y del tipo de codificación utilizado en la columna. Para obtener más información sobre las diferencias de almacenamiento entre los distintos tipos de codificación, consulte Compatibilidad con la intercalación y Unicode.

Ejemplos

En este ejemplo se busca la longitud de la columna Name en la tabla Product:

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

Consulte también

LEN (Transact-SQL)
CAST y CONVERT (Transact-SQL)
Tipos de datos (Transact-SQL)
Funciones del sistema (Transact-SQL)