请参阅下面的SQL:
select substring(hash1,1,4) from (
select hashbytes('SHA1', 'Ian' + 'Maria') as hash1
) as hashtable
返回:
0xC0326BA0
返回了八个字符:即0X + 8个字符。为什么返回8个字符?我意识到这是一个简单的问题,但我今晚没有找到答案。
答案 0 :(得分:4)
在二进制数据类型上使用SUBSTRING
时,它会返回length
个字节,而不是字符,因此在这种情况下,您将返回四个字节C0
,{{ 1}},32
和6B
。
如果您确实需要将4个字符的随机二进制数据解释为字符串,则可以执行以下操作:
A0
但它不一定是数据意味着什么。