利用table()函数,我们可以将PL/SQL返回的结果集代替table。
TABLE 表达式可用于查询任何集合值表达式,包括变量和参数等瞬态值。
TABLE 表达式中的子查询具有以下限制:
- 子查询必须返回一个集合类型。
- 子查询的 SELECT 列表必须只包含一项。
- 子查询必须只返回一个集合; 它不能返回多行的集合。
示例:
postgres=# select * from table(string_to_array('ab,cd,ef', ','))t;
column_value
--------------
ab
cd
ef
(3 行记录)