根据我的阅读,索引就像在书的前面写索引页一样,以确保db不必遍历所有页面。
如果对主键进行索引,则不会与遍历整本书完全相同,因为它们都是唯一的,因此主键索引中的分类与文档数相同。如果是这样,如果没有性能优势,索引主键的目的是什么?
答案 0 :(得分:2)
主键是索引 - 键是索引!它只是一种特殊类型索引的特殊名称,它始终是唯一的,并且可能具有自动分配的值。
在某些数据库中,行有时(或始终)以与主键相同的顺序存储。在这些情况下,主键可能不需要单独编制索引 - 行的顺序本身就足够了。
在某些其他数据库中,主键的处理方式不同。例如,行以任意顺序存储 - 可能按照它们上次修改的顺序存储。在这些情况下,主键上需要一个索引来查找行。