Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: SQL Server 2016 (13.x) e versioni
successive di Istanza gestita di SQL di
Azure Istanza
gestita di SQL diAzure Azure Synapse Analytics
in Microsoft FabricWarehouse nel database SQL di
Microsoft Fabric
in Microsoft Fabric
Questa funzione comprime l'espressione di input usando l'algoritmo Gzip . La funzione restituisce una matrice di byte di tipo varbinary (max).
Convenzioni relative alla sintassi Transact-SQL
Sintassi
COMPRESS ( expression )
Argomenti
expression
Espressione di uno dei tipi di dati seguenti:
- binary(n)
- char(n)
- nchar(n)
- nvarchar(max)
- nvarchar(n)
- varbinary(max)
- varbinary(n)
- varchar(max)
- varchar(n)
Per altre informazioni, vedere Espressioni.
Tipi restituiti
varbinary(max), che rappresenta il contenuto compresso dell'input.
Osservazioni:
I dati compressi non possono essere indicizzati.
La funzione COMPRESS comprime i dati di espressione dell'input. Richiamare questa funzione per ogni sezione di dati da comprimere. Per altre informazioni sulla compressione automatica dei dati durante l'archiviazione a livello di riga o di pagina, vedere Compressione dei dati.
Esempi
R. Comprimere i dati durante l'inserimento di tabelle
L'esempio illustra come comprimere i dati inseriti in una tabella:
INSERT INTO player (
name,
surname,
info
)
VALUES (
N'Ovidiu',
N'Cracium',
COMPRESS(N'{"sport":"Tennis","age": 28,"rank":1,"points":15258, "turn":17}')
);
INSERT INTO player (
name,
surname,
info
)
VALUES (
N'Michael',
N'Raheem',
COMPRESS(@info)
);
B. Archiviare la versione compressa di righe eliminate
Questa istruzione elimina i record obsoleti Player (Giocatore) dalla tabella player, dopo di ché, per risparmiare spazio, archivia i record nella tabella inactivePlayer usando un formato compresso.
DELETE FROM player
OUTPUT
deleted.id,
deleted.name,
deleted.surname,
deleted.datemodifier,
COMPRESS(deleted.info)
INTO dbo.inactivePlayers
WHERE datemodified < @startOfYear;