如果table1.field1上建有索引
应该用table1.field1=to_number(table2.field2)
如果table2.field2上建有索引
应该用table2.field2=to_char(table1.field1)
应该用table1.field1=to_number(table2.field2)
如果table2.field2上建有索引
应该用table2.field2=to_char(table1.field1)
1,如果我不使用to_number函数的话,会有什么结果呢?(就是说直接用where table1.field1=table2.field2,不进行任何转换)
2.如果2个表都没有索引的话,又会是什么情况呢?
3.另外,如果表table1具有索引(建立在field1上的索引),并假设两个表一样大,在进行table1.field1=table2.field2比较的时候,是将table1.field1写在等号的左边还是将table2.field2写在等号的左边呢?table1的这个索引在查询中是不是一定会用到呢?
create index I_F_table2_field2 on table2(to_number("field2"))...;这样,在查询的时候用,显示转换就会有效率的提高.
不过,我看你说,几千条的数据,应该效果不是很明显