求涉及多个数据结果集整合的存储过程写法

[复制链接]
查看11 | 回复9 | 2013-12-9 14:13:35 | 显示全部楼层 |阅读模式
在用oracle数据库时,如果需要将多个做了表关联的select数据结果集的信息进行分析整理返回一个新的数据集,在oracle中用存储过程一般如何处理了。
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
可以尝试用嵌套表等工具。
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
xgghxkhuang 发表于 2012-3-5 12:37
可以尝试用嵌套表等工具。

用其他外部工具对项目来讲增加了复杂性,也不便于管理。如果能在存储过程中直接将该部分业务逻辑处理好不是更好。
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
用临时表
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
用游标嘛:create or replace procedure xxx(po_cursorout sys_refcursor) is
begin
...
open po_cursor for select ... from a, b, c where a.xx = b.xx and a.xxx=c.xxx;
....
end;
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
dageji111 发表于 2012-3-5 16:44
用游标嘛:create or replace procedure xxx(po_cursorout sys_refcursor) is
begin
...

如果我有多个结果集是根据参数查询出来的,然后我再根据查询后的结果进行表关联,这样用游标能实现?
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
zxf261 发表于 2012-3-5 15:43
用临时表

oracel的临时表如何理解,能做到存储多个数据集的?
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
xiehoho2008 发表于 2012-3-5 17:25
如果我有多个结果集是根据参数查询出来的,然后我再根据查询后的结果进行表关联,这样用游标能实现?

当然可以
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
xiehoho2008 发表于 2012-3-5 17:25
如果我有多个结果集是根据参数查询出来的,然后我再根据查询后的结果进行表关联,这样用游标能实现?

你的SQL可以带子查询,子查询结果和表一样的访问。
回复

使用道具 举报

千问 | 2013-12-9 14:13:35 | 显示全部楼层
xiehoho2008 发表于 2012-3-5 17:25
如果我有多个结果集是根据参数查询出来的,然后我再根据查询后的结果进行表关联,这样用游标能实现?

你的SQL可以带子查询,子查询结果和表一样的访问。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行