报错语句
一直使用的语句
select * from B
where id in (select id from A);
突然报错了,提示:ORA-01722:无效数字。

修改语句
经过检查发现b表中的ID字段被修改为VARCHAR2类型,A表中还是NUMBER类型。
修改后的SQL语句:
select * from B
where id in (select to_char(id) from A);
文章描述了在使用SQL查询时,由于表B的ID字段由NUMBER类型改为VARCHAR2,导致原SQL语句报错ORA-01722。作者提供了将A表中的ID转换为字符串的解决方法:`select*fromBwhereidin(selectto_char(id)fromA)`。
一直使用的语句
select * from B
where id in (select id from A);
突然报错了,提示:ORA-01722:无效数字。

经过检查发现b表中的ID字段被修改为VARCHAR2类型,A表中还是NUMBER类型。
修改后的SQL语句:
select * from B
where id in (select to_char(id) from A);
207

被折叠的 条评论
为什么被折叠?