当前位置: 移动技术网 > IT编程>数据库>Oracle > 数据库报“ORA-01722: 无效数字”错误的解决办法

数据库报“ORA-01722: 无效数字”错误的解决办法

2018年09月29日  | 移动技术网IT编程  | 我要评论

vray安装教程,黑眼豆豆成员介绍,慢性折磨呕吐室

报错信息:ora-01722: 无效数字

问题sql:


select a.*,
b.fund_code as fund_code,
 b.fund_fullname as fund_fullname
from bsp_sys_attach a,bsp_fund_base b
where a.entity_id=b.fund_id

/*
    此处a.entity_id的类型为varchar;
    b.fund_id的类型为number;
    两者类型不匹配所以报错。
*/

更改后正确sql:

select a.*,
b.fund_code as fund_code,
 b.fund_fullname as fund_fullname
from bsp_sys_attach a,bsp_fund_base b
where a.entity_id=to_char(b.fund_id)

/*
    类型转换函数to_char()
*/

拓展:

将日期型转换为字符串to_char()

select 
to_char (sysdate, 'yyyy-mm-dd hh24:mi:ss am')
from dual

将数字型转换为字符串to_char()

select 
to_char(123.45678,'$99999.999') 
from dual;

将字符换转换为日期to_date()

 
select 
to_date ('20100913', 'yyyy-mm-dd')
from dual;

将字符串转换为数字to_number()

select 
to_number('01') 
from dual;

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网