Oracle
在 plsql Oracle10g 上返回多行
我正在做一個小項目,我需要做一個 plsql 來返回很多行。
我有類似的東西:
Table(id, data1, data2, from)
使用者給了我 from 的值,我必須返回所有這些。
SQL 很簡單:
SELECT * FROM Table WHERE from = dataIntroduced
但是,我不知道 plsql 如何返回它。
我讀過關於收藏的文章,但我認為這不是我需要的
從 PL/SQL 返回選擇數據的一種方法是使用 Oracle 表函式。下面是一個範例,其中該行
SELECT * FROM table_a where test_a = par1;
應由您的 select 語句替換 + 更改表名。Create table Table_a (test_a varchar2(1)) / insert into table_a values('a') / create or replace package test_package as TYPE col_table_1 is table of TABLE_A%ROWTYPE; function test_plsql_table(par1 varchar2) return col_table_1 pipelined; end; / create or replace package body test_package as function test_plsql_table(par1 varchar2) return col_table_1 PIPELINED as cursor temp_cur is SELECT * FROM table_a where test_a = par1; begin for cur_rec in temp_cur loop pipe row(cur_rec); end loop; end; end; / SELECT * from TABLE( test_package.test_plsql_table('a')) /