13

約 10 個の電子メール ID のリストからメール ID の存在をテーブルで検索するアプリケーションを実装します。$or と $in を使用してみました。

$in はパフォーマンスが向上しているように見えますが、重要ではありません。1つは他よりも最適化されていますか?

4

4 に答える 4

30

MongoDB のドキュメントに答えがあります。

「同じフィールドの値に対する等値チェックである <expressions> で $or を使用する場合は、$or 演算子よりも $in 演算子を選択してください。」

于 2013-02-06T21:11:40.307 に答える
3

"$or" は常に機能しますが、クエリ オプティマイザーがより効率的に処理するため、可能な限り "$in" を使用してください。

さらに、「$in」の方が読みやすいです。

参照: MongoDB: 決定版ガイド

于 2014-05-22T21:23:12.513 に答える