我打算比较 HANA 和 Bigquery 中的大量数据,所以考虑对行进行哈希处理并减少它并进行比较,但是一行的 Sha256 在 HANA 和 Bigquery 中返回不同的值,PSB 示例:
HANA(如果我删除 TO_BINARY 我会出错):
SELECT cast(HASH_SHA256(TO_BINARY('Hello World')) AS VARCHAR) "HASH_STRING" FROM DUMMY;
输出:
A591A6D40BF420404A011733CFB7B190D62C65BF0BCDA32B57B277D9AD9F146E
SELECT SHA256(CAST('Hello World' as STRING)) as "HASH_STRING";
输出:
pZGm1Av0IEBKARczz7exkNYsZb8LzaMrV7J32a2fFG4
我浏览了一些 HANA 和 Bigquery 文档(试图将 bigquery 更改为使用二进制文件)但没有用
参考this贴得到答案,下面是变化:
SELECT upper(TO_HEX(SHA256(CAST('Hello World' as STRING)))) as hashvalue
A591A6D40BF420404A011733CFB7B190D62C65BF0BCDA32B57B277D9AD9F146E