如果table1.field1上建有索引
应该用table1.field1=to_number(table2.field2)
如果table2.field2上建有索引
应该用table2.field2=to_char(table1.field1)

解决方案 »

  1.   

    xzou(亡狼补齿)兄,
       1,如果我不使用to_number函数的话,会有什么结果呢?(就是说直接用where table1.field1=table2.field2,不进行任何转换)
      2.如果2个表都没有索引的话,又会是什么情况呢?
      3.另外,如果表table1具有索引(建立在field1上的索引),并假设两个表一样大,在进行table1.field1=table2.field2比较的时候,是将table1.field1写在等号的左边还是将table2.field2写在等号的左边呢?table1的这个索引在查询中是不是一定会用到呢?
      

  2.   

    显示转换和隐式转换效率应该差不多把,不过,你可以尝试给tabel2.field2上建立函数索引:
    create index I_F_table2_field2 on table2(to_number("field2"))...;这样,在查询的时候用,显示转换就会有效率的提高.
    不过,我看你说,几千条的数据,应该效果不是很明显