我搜索了四周,但我似乎無法找到一個適當的解釋背後的唯一和非唯一索引的概念在數據庫中。數據庫中非唯一索引的用途是什麼?
在Rails中,例如,可以爲某一領域創造獨特和非唯一索引,截至http://railsguides.net/advanced-rails-model-generators/
解釋什麼,我不明白的是:如果一個指數的目的是爲了「設置快捷方式「添加到表格中的值位置以便更快地訪問它,那麼多個值如何共享相同的索引?
說例如我在一個表中存儲電子郵件,我想索引他們的值位置。 如果到目前爲止我的判斷是正確的,如果我有非唯一索引,那麼數據庫可能在[email protected]索引150位,[email protected]索引150位。 因此,如果我最終得到在位置150處說出100個不同的值,如果DB仍然需要在150處搜索所有值以找到我需要的確切記錄,那麼這不會首先破壞索引的目的嗎?
這是怎麼回事?
感謝
看看這個http://richardfoote.wordpress.com/2007/12/18/differences-between-unique-and-non-unique-indexes-part-i/ – 2014-10-20 11:24:48
是的,其實我發現那篇文章,但是它被寫成這樣一種基本問題的不必要的複製方式,我要求我不能通過它:「放棄/禁用由自動創建的唯一索引管理的約束會導致索引在您忘記KEEP INDEX時被刪除條款」。 ... – 2014-10-20 11:41:16