Sql 如何在类型中存储resultset并在Oracle中获取

Sql 如何在类型中存储resultset并在Oracle中获取,sql,plsql,oracle11g,Sql,Plsql,Oracle11g,我是Oracle的新手。我只想在变量中捕获选择的结果,然后我想使用该变量对该数据执行多次操作,就像我们在Sql server中使用表变量一样 我尝试了以下方法: BEGIN DECLARE TYPE FullRecord IS RECORD (RNumber NUMBER); rec FullRecord; BEGIN SELECT RNumber INTO rec FROM tableData; END;

我是Oracle的新手。我只想在变量中捕获选择的结果,然后我想使用该变量对该数据执行多次操作,就像我们在Sql server中使用表变量一样

我尝试了以下方法:

BEGIN
   DECLARE
      TYPE FullRecord IS RECORD (RNumber NUMBER);
      rec    FullRecord;
   BEGIN
      SELECT RNumber 
       INTO rec 
      FROM tableData;
   END;

END

)

您需要
批量收集
。见下文:

DECLARE
      TYPE FullRecord1 IS RECORD (RNumber NUMBER);          
      TYPE FullRecord is table of FullRecord1 index by pls_integer;          
      rec    FullRecord;
BEGIN
      SELECT RNumber 
       BULK COLLECT INTO rec 
      FROM tableData;

   for i in 1..rec.count
   loop

    dbms_output.put_line(rec(i).RNumber);
   end loop;

END;

阅读更好的解释

查找plsql表我的要求是resultset有多个列(大约15列),并且所有列都是通过连接多个表来实现的,因此希望在过程中捕获该数据,并在整个过程中使用该数据。是的。你可以用PLSQL表做所有这些,如果你能给我一些链接或输入,那就太好了