PL/SQL select into - 如果数据存在
仅当存在数据时,我才需要选择局部变量。
SELECT column1 INTO local_variable FROM table1 where column2 = <condition>;
在这里,如果没有与条件匹配的数据,我会收到“找不到数据”错误。
仅当有一些数据符合条件时,我才需要选择局部变量。有没有一个简单的查询可以解决我的问题。
I need to select into a local variable only if there exists data.
SELECT column1 INTO local_variable FROM table1 where column2 = <condition>;
Here if there is no data matching the condition I get a no data found error.
I need to select into the local variable only if there is some data matching the condition. Is there a simple query that will solve my problem.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
可能最好的方法是处理 no_data_found
另外,如果您使用主键/唯一键(即column2是唯一的)进行选择,那么您可以做一个技巧
Probably the best way is to handle no_data_found
Also, if you are selecting with primary key /unique key (that is column2 is unique) then there is a trick you can do
嗯……在进行选择之前先进行计数。或者只处理 no_data_found 异常。
您可以打开一个游标并获取行,进行计数,如果它大于 0,则对该记录执行您的操作
Well…do a count before doing the select. Or just handle the no_data_found exception.
You can open a cursor and fetch the rows, do a count and if it is greater than 0 then do your stuff with that record ????