首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

怎么给结果返回默认植

2012-02-27 
如何给结果返回默认植?在存储过程中有如下sql语句:selectdecode(id,0,0,id)asidintoresult_idfromtablenam

如何给结果返回默认植?
在存储过程中有如下sql语句:

select   decode(id,0,0,id)   as   id   into   result_id   from   tablename   where   condition   =   condition_para;

我希望实现如下功能:
如果查询到记录,则返回查询到的id字段的值。
如果没有查询到记录,则返回0。

我把decode函数改为decode(id,null,0,id),也不能实现。

该查询肯定只会返回一条记录,如果有的话,不用担心into的问题。id的类型是int。

希望各位大虾能提供一个解决方案,谢谢先。

[解决办法]
把decode(id,0,0,id)换成nvl(id,0)试试
还有decode(id,0,0,id)没有意义呀.

[解决办法]
是否可以考虑把select的结果集放入一个游标中(最多就是一条数据和没有数据)?
用游标判断如果有数据就把值赋给result_id,如果没有数据的话result_id就为0

可否这样?

热点排行