这个查询语句如何修改,才能在存储过程中使用

gxmsdc0133 2014-09-15 07:47:29



这个sql可以查询出来了,什么才能让它在存储过程中使用呢,
我把它放在存储过程中使用出现“SELECT 语所中缺少into 子句”
如何解决
...全文
97 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bw555 2014-09-15
  • 打赏
  • 举报
回复
关键是你返回的结果是干什么用的 如果仅作为显示,可以参考2#的写法 作为其他用途,将2#语句中的dbms_output.put_line改为你的处理语句就行了
gxmsdc0133 2014-09-15
  • 打赏
  • 举报
回复
引用 3 楼 bw555 的回复:
说下你具体的需求吧 pl/sql中select 和 into 是配对使用的,并且select into 使用时要求查询出的记录有且仅有一条 如果需要处理多条数据,就要使用游标来完成
我的就是想要在存储过程中使用你给的SQL,让他返回所查询的结果
bw555 2014-09-15
  • 打赏
  • 举报
回复
说下你具体的需求吧 pl/sql中select 和 into 是配对使用的,并且select into 使用时要求查询出的记录有且仅有一条 如果需要处理多条数据,就要使用游标来完成
CT_LXL 2014-09-15
  • 打赏
  • 举报
回复
引用 楼主 gxmsdc0133 的回复:
如何解决
在存储过程中必须将查询的结果保存在变量或者游标中,因为单纯的查询在存储过程中也没法使用的。如果返回结果是单个的一条记录你可以简单的select into,如果是一个结果集最好使用游标如下:
for c in (select * from(select t.*,row_number() over(partition by 类型 order by 发布时间 desc) rn from t) where rn<=10) loop
dbms_output.put_line(c1.rn||c1.字段名); --打印结果集中的字段
end loop;
sych888 2014-09-15
  • 打赏
  • 举报
回复
返回集合或游标

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧