Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / binary(16) в bigint / 5 сообщений из 5, страница 1 из 1
28.06.2021, 13:23
    #40080480
doz.ace
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
binary(16) в bigint
Интересует, можно ли конвертировать binary16 в bigint / int?

К примеру при преобразовании в bigint значения binary(16)
Например из BINARY(16) = 0x80C3B15B250D5FEB 11EB562F3E4DF5E5 получаем 1291220479080527333
но обратная операция уже приводит к 0x0000000000000000 11EB562F3E4DF5E5
До 11EB562F3E4DF5E5 теряется часть данных. Это корректно? или binary(16) не помещается в BIGINT и режется?
binary(16) по идее 16 байт, а bigint - 8 байт

DECLARE @vbinary BINARY(16) = 0x80C3B15B250D5FEB11EB562F3E4DF5E5 -- 1291220479080527333
-- 0x000000000000000011EB562F3E4DF5E5
-- 0x000000000000000011EB562F3E4DF5E5
,@vbigint bigint = 1291220479080527333

SELECT
-- @vbinary + 0 test,
CONVERT(bigint, @vbinary) bigint_,
CONVERT(BINARY(16), @vbigint) binary16_

,CONVERT(BINARY(16), CONVERT(BIGINT, @vbinary)) bigint_to_binary16
...
Рейтинг: 0 / 0
28.06.2021, 13:25
    #40080482
doz.ace
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
binary(16) в bigint
уже нашел похожую тему, копаю
https://www.sql.ru/forum/1189174/iz-binary-16-v-bigint
...
Рейтинг: 0 / 0
28.06.2021, 13:27
    #40080483
doz.ace
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
binary(16) в bigint
понятно, преобразовываются только последние 8 байт...
...
Рейтинг: 0 / 0
28.06.2021, 13:41
    #40080486
msLex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
binary(16) в bigint
bigint - 8 байт

без потери данных 16 байт туда не впихнуть
...
Рейтинг: 0 / 0
28.06.2021, 21:41
    #40080613
uaggster
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
binary(16) в bigint
msLex
bigint - 8 байт

без потери данных 16 байт туда не впихнуть

Почему не впихнуть то?
... Просто впихивать надо в 2 bigint.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / binary(16) в bigint / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]