1
我有一个表示十六进制值的字符串列,例如 -
'274', '1A7', '3D1' and so on
。SQL服务器将十六进制字符串转换为varbinary
现在我需要将这些值转换为它们的整数值,例如'10'将被转换为16。
的代码我使用:
SELECT CONVERT(int, CONVERT(varbinary, '0x' + case when replicate('0', len(myHex)/2) + myHex = '0' then '00' else replicate('0', len(myHex)/2) + myHex end, 1))
我实际上填充字符串以0或2使它的长度均匀,并添加'0x'
前缀。但是有些(随机)行失败。 是否有另一种方法来转换值?
谢谢。
这是十六进制转换成十进制的方式 – user2881430