【发布时间】:2014-09-15 11:20:13
【问题描述】:
想象一下我有一张这样定义的表格:
CREATE TABLE test (
values HSTORE NOT NULL
);
假设我插入了几条记录,结果如下:
values
-----------------------------
"a"=>"string1","b"=>"string2"
"b"=>"string2","c"=>"string3"
有什么方法可以进行聚合查询,为我提供一个新的 hstore,其中包含所有行的合并键(和值)。
伪查询:
SELECT hstore_sum(values) AS value_sum FROM test;
想要的结果:
value_sum
--------------------------------------------
"a"=>"string1","b"=>"string2","c"=>"string3"
我知道每个键的不同值可能存在冲突,但在我的情况下,选择值的顺序/优先级并不重要(它甚至不必是确定性的,因为它们对于相同的键)。
这可能是开箱即用的还是你必须使用一些特定的自制 SQL 函数或其他方法来做到这一点?
【问题讨论】:
标签: postgresql aggregate hstore