postgresql 在Postgres中将行的哈希值作为新列插入

nfs0ujit  于 2022-11-04  发布在  PostgreSQL
关注(0)|答案(2)|浏览(145)

我在Postgres中有一个查询,它为表中的每一行返回一个散列值:

SELECT
  md5(CAST((f.*)AS text))
  FROM
  my_table f;

我想把每个哈希值附加到它对应的行上。我该如何将每行的结果添加到新的列中呢?

ar7v8xwq

ar7v8xwq1#

这是很容易做到的。这是不是一个好主意是另一回事。

alter table my_table add hash_col text;
update my_table set hash_col =md5(cast((my_table.*) as text));
wgmfuz8q

wgmfuz8q2#

这是你的:

Select *, md5(array_to_string(translate(string_to_array(f::text, ',')::text, '()', '')::text[], '')) from my_table as f;

相关问题