小编Bar*_*art的帖子

ORA-01722: to_number 中的数字无效

我正在尝试按发票编号连接两个表中的数据,

LOC         NOT NULL VARCHAR2(40)
INV_ORG            NUMBER
Run Code Online (Sandbox Code Playgroud)

像这样它工作正常:

SELECT     oh.inv_org,e.loc
FROM       headers oh, sites e
WHERE
AND e.location = TO_CHAR(oh.inv_org);
Run Code Online (Sandbox Code Playgroud)

但是当我尝试将字符转换为数字时,我得到 ORA-01722: invalid number

SELECT     oh.inv_org, e.loc
FROM       headers oh, sites e
WHERE
AND to_number(e.loc) = oh.inv_org;
Run Code Online (Sandbox Code Playgroud)

错误报告

ORA-01722: 无效号码

我不知道为什么,因为在选择中,转换也可以正常工作

INV_ORG  110992
LOC  110992
OH.INV_ORG-TO_NUMBER(E.LOC) 0
Run Code Online (Sandbox Code Playgroud)

sql oracle

5
推荐指数
1
解决办法
8030
查看次数

标签 统计

oracle ×1

sql ×1