天天看点

【原创】PostgreSQL 返回多个结果集

mysql的存储过程 可以很方便的一次性的返回多个结果集, 但是postgresql目前不提供这样的功能。

一个直译的方法就是用游标来做,不过也可以把结果集放到数组里面或者一个大的临时表或者是xml等的格式来输出。

比如在mysql里面可以这样简单的写一个存储过程。

在postgresql环境下,来看下下面的函数代码,只能用游标来实现,而且还不能在函数里面返回。

接下来,在一个事务里面来获取对应的游标结果集。

如果是是多个结果集,但是每个结果集里面只有一行数据的话,也可以用out参数来实现。

如果返回的多个结果集的字段和类型都一致的话,那就跟单个结果集一样了。

继续阅读