唯一与非唯一索引

时间:2013-12-11 09:37:50

标签: sql oracle plsql

我的桌面拥有近4000万条记录。使用DML。

想知道这些唯一或非唯一索引中哪一个更适合实施。为了提供更好的表现。

环境:Oracle 11g

2 个答案:

答案 0 :(得分:16)

如果可能,请使用唯一索引。否则,请使用非唯一索引。

换句话说,如果你可以使用唯一索引,你应该。如果有任何理由可能需要记录重复数据,则无论如何都无法做出选择。

如果索引保证唯一,Oracle可以执行某些非唯一索引无法实现的查询计划优化 - 例如,如果使用唯一索引来探测特定值,Oracle可以停止进一步处理索引一找到匹配就阻塞。

答案 1 :(得分:-3)

如果它具有唯一性

的数据,这完全取决于表中数据的类型

高然后使用B-tree否则使用Bitmap索引。