将查询结果转换为 hstore
Convert a query result to hstore
我正在使用 PostgreSQL 9.4。我需要将子查询转换为 hstore。
我有这个查询:select code, value_string from dir
。它returns
code | value_string
------|--------------
CODE | 1
ACC | 2
...
如何将他的结果转换为hstore('"ACC"=>"2", "CODE"=>"1", ...')
?
我看起来像这样:SELECT hstore(select code, value_string from dir)
。
hstore(text[], text[])
- construct an hstore from separate key and value arrays.
使用 array_agg()
作为此函数的参数。示例:
create table dir (code text, value_string text);
insert into dir values
('CODE', 1),
('ACC', 2);
select hstore(array_agg(code), array_agg(value_string))
from dir;
hstore
-------------------------
"ACC"=>"2", "CODE"=>"1"
(1 row)
我正在使用 PostgreSQL 9.4。我需要将子查询转换为 hstore。
我有这个查询:select code, value_string from dir
。它returns
code | value_string
------|--------------
CODE | 1
ACC | 2
...
如何将他的结果转换为hstore('"ACC"=>"2", "CODE"=>"1", ...')
?
我看起来像这样:SELECT hstore(select code, value_string from dir)
。
hstore(text[], text[])
- construct an hstore from separate key and value arrays.
使用 array_agg()
作为此函数的参数。示例:
create table dir (code text, value_string text);
insert into dir values
('CODE', 1),
('ACC', 2);
select hstore(array_agg(code), array_agg(value_string))
from dir;
hstore
-------------------------
"ACC"=>"2", "CODE"=>"1"
(1 row)