Plsql 在select语句中使用游标

Plsql 在select语句中使用游标,plsql,Plsql,希望您能帮助我,我正在尝试在sql查询中使用游标。我99%确信这是可以做到的,所以请给我一些建议?这是我的密码 FUNCTION filter (c_cur_trip_menu IN c_menu_tripulantes) RETURN c_menu_tripulantes IS BEGIN SELECT * FROM c_cur_trip_menu , opciones_migradas

希望您能帮助我,我正在尝试在sql查询中使用游标。我99%确信这是可以做到的,所以请给我一些建议?这是我的密码

FUNCTION filter (c_cur_trip_menu IN  c_menu_tripulantes) 
        RETURN c_menu_tripulantes IS 
    BEGIN
             SELECT * 
            FROM c_cur_trip_menu  , opciones_migradas 
            WHERE  mnu.mnu_idemnu = id_opcion;      


            RETURN c_cur_trip_menu;
    END filter;
我想要的是将光标用作表。
提前感谢。

您可以将数据从
光标
复制到
临时表
,但不能像表格一样使用光标。如果要在oracle中构建函数,则不能使用
select
语法显示数据:

 FOR cur in c_cur_trip_menu
 LOOP
     dbms_output.put_line(cur.col1||' 'cur.col2);
 END LOOP;

您可以将数据从
光标
复制到
临时表
,但不能像表一样使用光标。如果要在oracle中构建函数,则不能使用
select
语法显示数据:

 FOR cur in c_cur_trip_menu
 LOOP
     dbms_output.put_line(cur.col1||' 'cur.col2);
 END LOOP;

您不能从游标中选择(但可以从任何select语句(使用游标(您的查询))创建游标),但表或流水线函数可以帮助您完成任务。帮助你。尽管如此,我始终不明白在基于sql的DB视图中尝试移动函数方法来检索数据,这是一个完美的解决方案。功能很弱,无法由CBO进行估计,因此您可以创建一个位置,使您的查询提前运行得更慢。为什么-不知道……

您不能从游标中选择(但您可以从任何select语句(使用游标(您的查询))创建游标),但表或流水线函数可以帮助您完成任务。帮助你。尽管如此,我始终不明白在基于sql的DB视图中尝试移动函数方法来检索数据,这是一个完美的解决方案。功能很弱,无法由CBO进行估计,因此您可以创建一个位置,使您的查询提前运行得更慢。为什么——不知道