照你这思路写成case when也行了,条件还不一定是等值比较
update 表名 set value = (case when 条件 then value+1 else value end)
不过再怎么写也是直接“update 表名 set value = value+1 where 条件” 这样的执行效率最高的
难到想这样?:
update 表名 set value = decode(value,1,2,2,3,3,4,4,5...null) where 条件[/quote]
update 表名 set value =decode(sign,1,value+1,0,value) //当sign为1时返回value+1,为零返回value
[quote=引用 1 楼 bw555 的回复:]
这个是作业题?
update 表名 set value = value+1 where 条件
这写法已经是最简单的了,改成其他的肯定没这个效率高
差不多作业题 用这个函数呢
DECODE(AA﹐V1﹐R1﹐V2﹐R2....)函数
解释:
IF AA=V1 THEN RETURN R1
IF AA=V2 THEN RETURN R2
..…
ELSE
RETURN NULL