对于DB2 ......
table1.a是varchar(30)并且有一个索引。 table2.b是varchar(45)并且有一个索引。
table1.a = table2.b
会使用table1,table2或两者的索引吗?
虽然看起来很明显它应该使用两个索引,但我问,因为我相信sybase,这只会使用其中一个索引(我不确定哪个索引)。
我完全打算对此进行测试,但我目前无法进行测试。
答案 0 :(得分:1)
这是我在DB2 for Z上的经验,它不会,因为数据类型必须相同 - 列的数据类型,精度,比例和可为空性必须匹配才能使用它们。
答案 1 :(得分:1)
在查询中使用EXPLAIN来确定它使用的索引。有关更多信息,请参阅此链接: