Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server 2016 (13.x) e versões
posteriores Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
SQL analytics endpoint in Microsoft Fabric
Warehouse em Microsoft Fabric
SQL database in Microsoft Fabric
Esta função comprime a expressão de entrada, usando o algoritmo Gzip . A função retorna uma matriz de bytes do tipo varbinary(max).
Transact-SQL convenções de sintaxe
Sintaxe
COMPRESS ( expression )
Arguments
expressão
Uma expressão de um dos seguintes tipos de dados:
- binário(n)
- char(n)
- Nchar(n)
- nvarchar(max)
- nvarchar(n)
- varbinary(max)
- varbinário(n)
- varchar (máx.)
- Varchar(n)
Para obter mais informações, consulte Expressões.
Tipos de devolução
varbinary(max), representando o conteúdo comprimido da entrada.
Observações
Os dados compactados não podem ser indexados.
A COMPRESS função compacta os dados da expressão de entrada. Você deve invocar essa função para cada seção de dados a ser compactada. Para obter mais informações sobre a compactação automática de dados durante o armazenamento no nível de linha ou página, consulte Compactação de dados.
Examples
A. Compactar dados durante a inserção da tabela
Este exemplo mostra como compactar dados inseridos em uma tabela:
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. Arquivar versão compactada de linhas excluídas
Esta instrução primeiro exclui registros de jogadores antigos da player tabela. Para economizar espaço, ele armazena os inactivePlayer registros na tabela, em um formato compactado.
DELETE FROM player
OUTPUT
deleted.id,
deleted.name,
deleted.surname,
deleted.datemodifier,
COMPRESS(deleted.info)
INTO dbo.inactivePlayers
WHERE datemodified < @startOfYear;