Partilhar via


GET_BIT (Transact SQL)

Aplica-se a: SQL Server 2022 (16.x) Azure SQL Database AzureSQL ManagedInstance SQL Analytics endpoint em Microsoft FabricWarehouse em Microsoft FabricSQL database em Microsoft Fabric

GET_BIT usa dois parâmetros e retorna o bit em expression_value que está no deslocamento definido por bit_offset.

Transact-SQL convenções de sintaxe

Sintaxe

GET_BIT ( expression_value, bit_offset )

Argumentos

expression_value

Qualquer inteiro ou expressão binária que não seja um objeto grande (LOB).

bit_offset

Qualquer inteiro.

Tipos de devolução

pouco

O parâmetro bit_offset em GET_BIT é usado para identificar o nth bit dos dados a serem obtidos ou definidos. Em tipos inteiros, o 0th bit é o bit menos significativo. Em tipos binários, o 0th bit é o bit menos significativo no byte mais à direita.

GET_BIT lançará um erro se bit_offset for negativo ou maior do que o último bit no tipo de dados.

Comentários

Não há suporte para a funcionalidade de Consulta Distribuída para as funções de manipulação de bits no servidor vinculado ou consultas ad hoc (OPENQUERY).

Os tipos de dados de objeto grande (LOB) no Mecanismo de Banco de Dados podem armazenar dados que excedam 8.000 bytes. Esses tipos de dados armazenam dados em uma página de dados de de estouro de linha. Um LOB também engloba tipos de dados que armazenam dados em estruturas de página LOB dedicadas, que usam um ponteiro de texto ou imagem de referências em linha a páginas de dados LOB. Para obter mais informações sobre armazenamento de dados, consulte o guia de arquitetura Pages and extents.

As funções de manipulação de bits operam no tinyint , smallint, int, bigint, binary(n)e varbinary(n) tipos de dados. Não há suporte para tipos de dados de objeto grande (LOB), como varchar(max), nvarchar(max), varbinary(max), image, ntext, text, xmle common language runtime (CLR) BLOB.

Exemplos

Neste exemplo, o segundo e quarto bits são retornados.

SELECT GET_BIT ( 0xabcdef, 2 ) as Get_2nd_Bit,
GET_BIT ( 0xabcdef, 4 ) as Get_4th_Bit;

Os resultados são os seguintes:

Get_2nd_Bit Get_4th_Bit
1 0

Observação

0xabcdef em binário é 1010 1011 1100 1101 1110 1111. O segundo e quarto bits são destacados.