Создайте столбец хеша для столбцов таблицы в sap hana - PullRequest
0 голосов
/ 28 декабря 2018

Я постараюсь сделать это как можно проще

У меня есть таблица TAB1 (ID, ИМЯ, LASTNAME, ВОЗРАСТ, DATEOFBIRTH, 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"

Код должен вставить / обновить SHA колонка

Спасибо

1 Ответ

0 голосов
/ 28 декабря 2018

Если 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
...