可以写成这样
decode(字段*(字段-1)*(字段-4)*(字段-7),0,表达式1,...)例:
13:27:43 SQL> select * from s; SNO SN SE AGE
--------- ---------- -- ---------
1 xm001 m 11
2 xm002 f 12
3 xm003 f 13实际:191
13:27:48 SQL> select decode((sno-1)*(sno-4)*(sno-7)*sno,0,'ok','not in 1,4,7') from s;DECODE((SNO-
------------
ok
not in 1,4,7
not in 1,4,7实际:70
13:31:44 SQL>
decode(字段*(字段-1)*(字段-4)*(字段-7),0,表达式1,...)例:
13:27:43 SQL> select * from s; SNO SN SE AGE
--------- ---------- -- ---------
1 xm001 m 11
2 xm002 f 12
3 xm003 f 13实际:191
13:27:48 SQL> select decode((sno-1)*(sno-4)*(sno-7)*sno,0,'ok','not in 1,4,7') from s;DECODE((SNO-
------------
ok
not in 1,4,7
not in 1,4,7实际:70
13:31:44 SQL>
解决方案 »
- oracle9i图形界面下创建对象后如何授权?如何建表
- 使用CRecordset派生类的Update函数时发生错误,求大神解决
- 数据分组查询处理求解
- 如何在Program Units中定義一個全局變量的數組,給ITEM級觸發器WHEN-VALIDATE-ITME調用???????????
- 事务处理问题,急
- 如何调用远程的procedure并且返回游标
- 关于rownum问题?
- 一句SQL语句,请高手指点
- 数据提交时的执行顺序?
- function 中是否不能用 dbms_sql啊
- ORA-24337:语句未准备好。这个错误该怎么解决啊?急,在线等。
- 开始菜单下怎么没有反映呀(如:Net 8 assistan , Net 8 ,Universal install))
decode只能使用单值,不过,oracle中也是有case这种语的
你的语句在oracle 中可以这样写:
SELECT CASE WHEN eg.col1 IN (0,1,4,7) THEN 表达式1 ELSE 0 END from eg;