2012-01-12 48 views
7

不支持的MongoDB使用本地運營商比較在同一個集合兩個字段$(而不是$這裏和JavaScript)? 我已經看過similarquestions並且所有答案都使用$ where/JavaScript。MongoDB的查詢與在同一採集2場沒有地方

MongoDB的documentation中明確指出:

的JavaScript的執行速度比這個網頁上列出的本地運營商比較慢,但非常靈活。

我主要關心的是速度,如果可能,我想使用索引。那麼在不使用JavaScript的情況下,可以在MongoDB中比較兩個字段?

+0

進度你絕對確保$其中,operator是太慢了你的使用情況? – maerics 2012-01-12 14:17:37

+0

@maerics簡短的回答 - 是的。如果一切都失敗了$這將是我最後的手段。但是我非常想避免$ where和如果可能的話通過索引字段進行搜索。 – 2012-01-12 14:23:55

回答

2

從閱讀您鏈接它看起來並不像MongoDB的文檔具有使用唯一的本地運營商來比較兩個文檔屬性的能力。

也許你可以修改文檔本身(和/或保存文檔的代碼)以包含一個布爾屬性和比較結果的值(提前),然後根據需要簡單地查詢該新屬性。你甚至可以索引它以獲得更好的性能。

+0

感謝您的意見,但這並不能真正解決我的問題。 – 2012-01-12 17:03:57