我发现这种奇怪的行为,我正在用这个打破我的大脑......任何人都有任何想法?
Oracle 10g:我有两个不同的表,都有一个名为" TESTCOL "的列为Varchar2 (10),不可为空.
如果我在table1上执行此查询,我会得到正确的结果:
select * from table1 where TESTCOL = 1234;
Run Code Online (Sandbox Code Playgroud)
请注意,我特别没有放置'1234'...这不是一个错字,这是一个动态生成的查询,我会尽量不改变它(至少在不久的将来不会).
但是,如果我在table2上运行相同的查询,我收到此错误消息:
ORA-01722: Invalid number
Run Code Online (Sandbox Code Playgroud)
两个查询都在同一个会话,同一个数据库上运行.
我已经通过该列加入了这两个表,并且连接工作正常,唯一的问题是每当我尝试使用该条件时都会显示.
关于从一张桌子到另一张桌子有什么不同的任何想法?
提前致谢.