Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Относится к: SQL Server 2022 (16.x)
Azure SQL Database
AzureSQL Managed Instance
SQL analytics endpoint in Microsoft Fabric
Warehouse in Microsoft Fabric
SQL database in Microsoft Fabric
GET_BIT принимает два параметра и возвращает бит в expression_value , который находится в смещении, определённом bit_offset.
Соглашения о синтаксисе Transact-SQL
Синтаксис
GET_BIT ( expression_value, bit_offset )
Аргументы
expression_value
Любое целочисленное или двоичное выражение, не являющееся крупным объектом (LOB).
bit_offset
Любое целое число.
Типы возвращаемых данных
bit
Параметр bit_offset в GET_BIT используется для идентификации n-гобита данных, который нужно получить или установить. В целочисленных типах 0 бит является наименее значимым битом. В двоичных типах 0 бит является наименее значимым битом в крайнем правом байте.
GET_BIT выдаст ошибку, если bit_offset отрицательно или больше последнего бита в типе данных.
Замечания
Функциональность распределённых запросов для функций управления битами внутри связанного сервера или ad hoc запросов (OPENQUERY) не поддерживается.
Типы данных больших объектов (LOB) в ядре СУБД могут хранить данные, превышающие 8000 байт. Эти типы данных хранят данные на странице данных с переполнением строк . LOB также включает типы данных, которые хранят данные на выделенных структурах страниц LOB, которые используют текстовый или изображенный указатель с ссылками в строке на страницы данных LOB. Для получения дополнительной информации о хранении данных смотрите руководство по архитектуре Pages and extents.
Функции управления битами работают с типами данных tinyint, smallint, int, bigint, binary(n) и varbinary(n). Типы данных больших объектов (LOB), такие как varchar(max), nvarchar(max),varbinary(max), image, ntext, text, xml и типы BLOB на основе общего языка (CLR), не поддерживаются.
Примеры
В этом примере возвращены второй и четвертый биты.
SELECT GET_BIT ( 0xabcdef, 2 ) as Get_2nd_Bit,
GET_BIT ( 0xabcdef, 4 ) as Get_4th_Bit;
Результаты будут следующими:
| Get_2nd_Bit | Get_4th_Bit |
|---|---|
| 1 | 0 |
Примечание.
0xabcdef в двоичном файле — 1010 1011 1100 1101 1110 1111. Второй и четвертый биты выделены.