为 sap hana 上的 table 列生成哈希列

Generate a hash column for table columns on sap hana

我会尽量简化

我有一个 table TAB1(ID、姓名、姓氏、年龄、出生日期、ID_CARD_NBR、SHA)

我需要为列中的这些列生成散列 SHA

在 SAP Hana 上获取哈希的查询:

SELECT hash_sha256(
to_varbinary("ID"),
to_varbinary(IFNULL("NAME",'0')),
to_varbinary(IFNULL("LASTNAME",'0')),
to_varbinary(IFNULL("AGE",'0')),
to_varbinary(IFNULL("DATEOFBIRTH",'0')),
to_varbinary(IFNULL("ID_CARD_NBR",'0')) )

FROM "MYSCHEMA"."PERSONS"

代码应 insert/update SHA

谢谢

如果 Id 是主键(不能为 NULL),您可以这样做:

UPDATE PERSONS
SET SHA = hash_sha256(to_varbinary("ID"),to_varbinary(IFNULL("NAME",'0')),to_varbinary(IFNULL("LASTNAME",'0')),to_varbinary(IFNULL("AGE",'0')),to_varbinary(IFNULL("DATEOFBIRTH",'0')),to_varbinary(IFNULL("ID_CARD_NBR",'0')) )
WHERE SHA IS NULL;  -- or other condition