select
decode(sign(column),1,
decode(sign(column-0.1),-1,0.1,column),column)
into tmp
from dual;
如果是从表内算的话是这样。
如果是语句的话。
declare
tmp varchar2(100)
begin
if column >0 and column <0.1
then
tmp = 0.1
else
tmp = column
end if;
decode(sign(column),1,
decode(sign(column-0.1),-1,0.1,column),column)
into tmp
from dual;
如果是从表内算的话是这样。
如果是语句的话。
declare
tmp varchar2(100)
begin
if column >0 and column <0.1
then
tmp = 0.1
else
tmp = column
end if;
解决方案 »
- 看看
- 绝对超级无敌简单的新手问题
- Windows XP + VMWare Server 1.0.6 + CentOS 5.2 + Oracle 10g Rac (10.2.0.1)安装文档
- 这个sql怎么写?
- 跪求RMAN技术文档
- select * from table wehere name=null 为什么查不到 name列为空的数据
- 存儲過程中的select into 子句沒有找到,會不會出錯?給分
- 请问: 在WINDOWS 2K中,装ORACLE8i可以吗? 我觉得9i太大了, 所以想用8i.
- log miner可以分析别的数据库的日志文件吗?
- pl/sql怎么显示存储过程的内容?
- 关于oracle中数据类型的问题
- 有关时间类型,应该很简单
更简单一些。
为什么要用column*呢?乘上这列干什么呢?
西西,这个条件不需要了。
OK,给分。