2014-07-19 153 views
0

我有一個查詢,其中標準是如下(PHP):1維的索引或多個索引

... 
->findBy(['userId'=>new \MongoId($me),'active'=>1],array('date' => 'DESC'),10); 

我想知道是否會更有效地使用的三指數大於使用一個簡單的索引例如,在userId上。

我的另一個問題是:字段active可以改變;在這個領域創建一個索引還有意義嗎?如果是,索引如何更新其值?

+0

我們知道得太少,以回答事實上,我們不知道你的數據分佈,形成等等等等,我會按照saj的說法來做,並檢查它是否緩慢並且調查/測試哪些索引模式更快。另外請記住,索引相交只有2.6+,因此在爲查詢製作多個索引之前,請確保您擁有該版本 – Sammaye

+0

至於MongoDB如何更新其索引值,它在更新/插入文檔時是以原子方式進行的 – Sammaye

回答