关于oracle查询报ora-01722 无效数据之疑惑?

我们有一张业务表,存储的是核心交易数据,最近在对近几年的交易进行一个统计时,发现数据库在查询过程中老是报ora-01722 无效数字错误,具体如下:
查询用到的只有两个列,分别为:时间 类型 为 date;金额 类型 为 number(10)
语句如下:
select to_char(时间,'yyyy'),sum(金额) from table_name where xxxxxx
group by to_char(时间,'yyyy')
使用年进行分组,但是在执行过程就报上述错误,我再怀疑是不是在“金额”这个列里面有插入了别的类型的值;

所以想请问一下各位大大们,有没有办法能在整个数据里查到类型不一致的数据?或者说有没有其他什么方法可以解决这个问题,另外就是这张表的数据量非常大,有几十亿条。

希望能有高手帮忙给点建议。

1回答

岳彩波岳彩波  产品经理 , 无
aixchina赞同了此回答
第一,你得把你的表结构贴出来,SQL语句完整版贴出来。第二,SQL语句里使用的时间格式有问题啊,你们都是这么写SQL语句的吗,找个范本好好看看,数据库也不是万能的。显示全部

第一,你得把你的表结构贴出来,SQL语句完整版贴出来。
第二,SQL语句里使用的时间格式有问题啊,你们都是这么写SQL语句的吗,找个范本好好看看,数据库也不是万能的。

收起
 2018-10-31

提问者

stader数据库管理员, 深圳地铁

问题状态

  • 发布时间:2018-10-30
  • 关注会员:2 人
  • 问题浏览:1209
  • 最近回答:2018-10-31
  • 关于TWT  使用指南  社区专家合作  厂商入驻社区  企业招聘  投诉建议  版权与免责声明  联系我们
    © 2019  talkwithtrend — talk with trend,talk with technologist 京ICP备09031017号-30