Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för: SQL Server 2016 (13.x) och senare versioner
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
SQL Analytics-slutpunkt i Microsoft Fabric
Warehouse i Microsoft Fabric
SQL Database i Microsoft Fabric
Den här funktionen komprimerar indatauttrycket med hjälp av Gzip-algoritmen . Funktionen returnerar en bytematris av typen varbinary(max).
Transact-SQL syntaxkonventioner
Syntax
COMPRESS ( expression )
Arguments
uttryck
Ett uttryck för någon av följande datatyper:
- binary(n)
- char(n)
- nchar(n)
- nvarchar(max)
- nvarchar(n)
- varbinary(max)
- varbinary(n)
- varchar(max)
- varchar(n)
Mer information finns i Uttryck.
Returtyper
varbinary(max), som representerar det komprimerade innehållet i indata.
Anmärkningar
Komprimerade data kan inte indexeras.
Funktionen COMPRESS komprimerar indata för indatauttryck. Du måste anropa den här funktionen för att varje dataavsnitt ska komprimeras. Mer information om automatisk datakomprimering under lagring på rad- eller sidnivå finns i Datakomprimering.
Examples
A. Komprimera data under tabellinfogning
Det här exemplet visar hur du komprimerar data som infogats i en tabell:
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. Arkivera komprimerad version av borttagna rader
Den här instruktionen player tar först bort gamla spelarposter från tabellen. För att spara utrymme lagrar den sedan posterna inactivePlayer i tabellen i ett komprimerat format.
DELETE FROM player
OUTPUT
deleted.id,
deleted.name,
deleted.surname,
deleted.datemodifier,
COMPRESS(deleted.info)
INTO dbo.inactivePlayers
WHERE datemodified < @startOfYear;