Postgresql 将一组hstore值作为表类型的一组记录返回

Postgresql 将一组hstore值作为表类型的一组记录返回,postgresql,hstore,Postgresql,Hstore,我开始试验Postgres的审计日志功能,如中所述 此函数将更改记录的新值存储在hstore字段中 我想检索hstore字段值作为记录表的一组记录 Postgres文档称,将hstore转换为记录类型的过程如下: CREATE TABLE test (col1 integer, col2 text, col3 text); SELECT * FROM populate_record(null::test, '"col1"=>"456", "col2"=>"zzz"'); 这适用于单

我开始试验Postgres的审计日志功能,如中所述 此函数将更改记录的新值存储在hstore字段中

我想检索hstore字段值作为记录表的一组记录

Postgres文档称,将hstore转换为记录类型的过程如下:

CREATE TABLE test (col1 integer, col2 text, col3 text);
SELECT * FROM populate_record(null::test, '"col1"=>"456", "col2"=>"zzz"');
这适用于单个记录,但我不知道如何对多个记录执行相同的操作。我试过这个:

SELECT
  populate_record(null::public.usr, logged_actions.row_data)
FROM
  audit.logged_actions
WHERE
  audit.logged_actions.table_name = 'usr'
。。。但它为usr表的每个记录返回一个复合列


您知道如何在此处将hstore值集作为usr类型的记录集返回吗?

多亏了Sergey Konoplev,我在此处找到了答案:

SELECT
  (populate_record(null::public.usr, logged_actions.row_data)).*
FROM
  audit.logged_actions
WHERE
  audit.logged_actions.table_name = 'usr'