Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
Funkcja ta zwraca liczbę bajtów używanych do reprezentowania dowolnego wyrażenia.
Uwaga / Notatka
Aby zwrócić liczbę znaków w wyrażeniu ciągowym znaków, użyj funkcji LEN .
Transact-SQL konwencje składni
Składnia
DATALENGTH ( expression )
Arguments
expression
Wyrażenie dowolnego typu danych.
Typy zwracane
bigint , jeśli ekspresja ma typ danych nvarchar(max),varbinary(max) lub varchar(max ); w przeciwnym razie int.
Uwagi
DATALENGTH Staje się naprawdę pomocny, gdy używa się z typami danych, które mogą przechowywać dane o zmiennej długości, takich jak:
- image
- ntext
- nvarchar
- tekst
- varbinary
- varchar
Dla wartości NULL zwraca DATALENGTH się NULL.
Uwaga / Notatka
Poziomy kompatybilności mogą wpływać na wartości zwrotu. Zobacz ALTER DATABASE Compatibility Level (Transact-SQL ), aby uzyskać więcej informacji o poziomach kompatybilności.
Uwaga / Notatka
Użyj LEN , aby zwrócić liczbę znaków zakodowanych w danym wyrażeniu ciągowym, oraz DATALENGTH , aby zwrócić rozmiar w bajtach dla danego wyrażenia ciągowego. Te wyjścia mogą się różnić w zależności od typu danych i rodzaju kodowania używanego w kolumnie. Więcej informacji o różnicach w pamięci masowej między różnymi typami kodowania można znaleźć w artykule Collation and Unicode Support.
Przykłady
Ten przykład pokazuje Product długość kolumny Name w tabeli:
USE AdventureWorks2022
GO
SELECT length = DATALENGTH(EnglishProductName), EnglishProductName
FROM dbo.DimProduct
ORDER BY EnglishProductName;
GO
Zobacz także
LEN (Transact-SQL)
RZUTOWANIE i konwertowanie (Transact-SQL)
Typy danych (Transact-SQL)
Funkcje systemowe (Transact-SQL)