我知道存储HASHBYTES函数输出的最佳数据类型是BINARY/VARBINARY,但我们希望按照DataVault最佳实践的建议将其存储为CHAR,而且并不是所有的tolls都支持BINARY类型的键,例如PowerBI。
因此,问题是,如何将其转换为CHAR?当我执行简单的CAST/CONVERT时,我得到的是HASHBYTES函数的不同输出,而不是原始输出。
SELECT CONVERT(CHAR(32), HASHBYTES('MD5', 'test'))
SELECT CAST(HASHBYTES('MD5', 'test') AS CHAR(32))
SELECT HASHBYTES('MD5', 'test')期望值为098F6BCD4621D373CADE4E832627B4F6 (不带0x),实际值为kÍF!ÓsÊÞNƒ&'´ö
发布于 2020-07-29 19:13:18
--convert binary to char without 0x prefix, using style 2
SELECT CONVERT(CHAR(32), HASHBYTES('MD5', 'test'), 2);https://stackoverflow.com/questions/63151630
复制相似问题