如何在 pl/sql 中编写遍历数字的循环
我想编写一个循环,在每次迭代时迭代数字 105 102 19 17 101 16 106 107
我想将数字插入查询并将其插入表中。
伪:
LOOP (105 102 19 17 101 16 106 107)
FETCH select * from some_table where value=current_iteration_index --105..etc.
INTO my_rec_type
END LOOP;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
另一种方法:
Another method:
这是一个更简洁但同样丑陋的替代方案:
这里的优点(IMO)是您只需要修改 IN 列表,也许还需要修改 CONNECT BY 子句的限制来更改结果。
Here's a more concise, albeit no less ugly, alternative:
The advantage here (IMO) is you only need to modify the IN list and perhaps the limit on the CONNECT BY clause to change your results.
虽然你的问题有几个解决方案,但根据你的处理,我要告诉你,我认为你处理这个问题的方式是错误的 - 你没有利用数据库的功能。
你能解释一下为什么
它不做你想做的事吗?
While there are a couple of solutions to your questions, but based on your handle I'm going to tell you that I think you're approaching this the wrong way - you're not taking advantage of the features of the database.
Can you explain why
doesn't do what you want it to do?
这是一个选项,使用 光标 FOR 循环,以及 %ROWTYPE属性:
Here's an option, using a Cursor FOR LOOP, and the %ROWTYPE attribute: