六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 58|回复: 0

oracle to_number 无效数字

[复制链接]

升级  90%

11

主题

11

主题

11

主题

童生

Rank: 1

积分
45
 楼主| 发表于 2013-1-14 09:00:25 | 显示全部楼层 |阅读模式
今天在执行一个sql语句时,发现一只报 无效数字
 
 
SELECT ddtime,dcprovince,dctffee,to_number(dctffee) FROM KS_OSS002 WHERE dntftype<>1 and ddtime>=TO_DATE('2012-02-14 00:00:00','yyyy-mm-dd hh24:mi:ss') AND ddtime<=TO_DATE('2012-02-14 09:59:59','yyyy-mm-dd hh24:mi:ss')and to_number(dctffee)>=0 
 
如果where条件中的to_number(dctffee)去掉后,就不会报错。后来发现原来是数据库中 有条记录dctffee字段填写的是全角的数字,本来以为 只要select 中的 to_number(dctffee)能出来就说明没有问题了,其实 如果没有最后的 to_number(dctffee)>=0条件,那条有问题的记录
没有包含在结果集里,但是最后加上and to_number(dctffee)>=0 ,会在判断 dntftype<>1 之前判断  to_number(dctffee)>=0,导致一直报无效数字
的错误。
 
看来自己还是很小白啊!!!! XD
 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表