1
7
就这样创建一个哈希表聚合函数。
然后可以使用pg_concat函数计算表的散列值。
|
2
24
我知道这是个老问题,但这是我的解决办法:
|
3
7
|
4
3
我有一个类似的要求,在测试专用表复制解决方案时使用。
第一个(在其他一些答案中提到)是,您需要确保在您检查的表上以已知顺序执行聚合。它的语法是例如。
注意
第二是使用
|
5
1
至于算法,您可以对所有单独的MD5散列进行异或运算,或者将它们连接起来并对连接进行散列运算。 如果你想完全在服务器端完成这项工作,你可能必须 create your own aggregation function ,然后你可以打电话给他。
作为中间步骤,不必将整个表复制到客户机,只需为所有行选择MD5结果,然后通过md5sum运行这些结果。 无论哪种方式,您都需要建立一个固定的排序顺序,否则即使对于相同的数据,您也可能得到不同的校验和。 |
6
1
很好的答案。 无论如何,如果有人不需要使用聚合函数,而是需要维护对大小为几个GiB的表的支持,您可以使用这个 小的
用作:
|
tggtsed · PostgreSQL从平均值中排除值 1 年前 |
Dawid · 为什么我不能在子查询中使用表别名? 2 年前 |
CraZyCoDer · 在PostgreSQL中锁定潜在事务 2 年前 |
ranebec · 计数时如何返回0而不是null? 2 年前 |
Flo · 分组依据中的SQL大小写 2 年前 |