字段:dd varchar2(4)
表:t_sss
实现功能:dd字段是varchar2类型的值为:0,1,2(不包含字母),要求是如果dd是0就直接是零,如果大于0实现减一操作。
表:t_sss
实现功能:dd字段是varchar2类型的值为:0,1,2(不包含字母),要求是如果dd是0就直接是零,如果大于0实现减一操作。
解决方案 »
- oracle零基础者求教!!!
- 关于用sqlldr导入日期的问题
- 请问max()函数在oracle9i和10G中有什么区别?
- Oracle11g(Release2) 命令行删除指定数据库Instance问题,急急急!!!
- 数据迁移问题
- 求一个SQL语句
- 我在oracle中找不到“表数据编辑器”!
- 请推荐几本oracle的书籍
- 求助!!!!!!为什么我在2003 server 上 安装oracle9i 没有任何反应!!!(给分来了)
- 我用vb调用oracle,但是返不回记录集!!!!!!急!!!!!!!!!!!
- 把一个varchar2类型的字段用to_number转化时 报错误:ORA:01722 invalid number
- 局域网内连接其他机器ORACLE数据库的方法
SQL> CREATE TABLE TT(DD VARCHAR2(4));Table createdSQL> INSERT INTO TT VALUES(0);1 row insertedSQL> INSERT INTO TT VALUES(2);1 row insertedSQL> INSERT INTO TT VALUES(5);1 row insertedSQL> INSERT INTO TT VALUES(3);1 row insertedSQL> SELECT * FROM TT;DD
----
0
2
5
3SQL> SELECT DECODE(DD,0,0,DD-1) FROM TT;DECODE(DD,0,0,DD-1)
-------------------
0
1
4
2
when to_number(REGEXP_REPLACE ('abcd123r4','[^0-9]',''))>0 then
to_number(REGEXP_REPLACE ('abcd123r4','[^0-9]',''))-1
else
0
end results
FROM t_sss
when to_number(REGEXP_REPLACE (dd,'[^0-9]',''))>0 then
to_number(REGEXP_REPLACE (dd,'[^0-9]',''))-1
else
0
end results
FROM t_sss