如何将SETOF转换为有用的东西?

时间:2015-12-08 06:51:11

标签: postgresql

SELECT GENERATE_SERIES(0, 2)SELECT * FROM GENERATE_SERIES(0, 2)非常有用,因为它会返回列和行... SELECT id,GENERATE_SERIES(0, 2) AS s FROM t ...

现在假设一个SETOF返回函数,如json_each_text()

SELECT * FROM json_each_text('{"a":"foo", "b":"bar"}'); -- OK, useful...    

SELECT id,json_each_text('{"a":"foo", "b":"bar"}') FROM t; -- Ops, UGLY THING!

那么,如何"演员"第二个查询到util的东西,有行和coluns吗?

PS:第二个查询工作正常,但不是我需要的(不是cols和rows)。

Ops ...我正在解决(它工作正常!)一个非常具体的问题(pg9.3 +功能)

SELECT t.id, key, value 
FROM t, LATERAL json_each_text(t.info); 

但不明白如何解决"转换SETOF数据类型的通用问题"行和列。

1 个答案:

答案 0 :(得分:1)

SELECT id, (json_each_text(t.info)).* FROM t