Я использую SQL Server 2017. Я извлекаю данные из внешней системы, в которой идентификаторы имеют шестнадцатеричный формат, как я полагаю, примеры ниже:
5af1a437e696991080f284c2
5af1a95be696991080f287ca
5af1adafe696991080f28af8
5af1b130e696991080f28dc4
5af1b130e696991080f28dc5
5af1b130e696991080f28dc6
Я хотел бы эффективно хранить эти идентификаторы и использовать их в объединениях.
В данный момент они у меня как varchar, поэтому они не будут хороши для индексации или использования в соединениях.
В идеале я хотел бы преобразовать их в INT.
Как я могу это сделать, и это правильный подход?
Стоит ли использовать другой тип данных, например varbinary и какой длины varbinary (8), varbinary (16)?
Я понимаю, что лучше всего было бы создать суррогатный ключ в нужном мне формате и использовать его в модели данных, но это для внутреннего использования, и я хочу сохранить это простым.