2016-09-15 19 views
0

{ $or:[{TextField1:{$eq:"DX93E6XX6R"}}], $or:[{TextField1:{$eq:"N4JXFTNP64"}}] }このMongoDBクエリでは何が起こっていますか?

コレクションには2つのドキュメントがあります。最初の式に等しい "TextField1"値と2番目の式に等しい同じフィールドを持つもの。

私の考えはだった:

Find all documents where TextField1 equals "DDX93E6XX6R" AND TextField1 equals "N4JXFTNP64"

答えて

2

秒1は、(最初​​のものを上書きする)に使用されるだけなので、あなたが同じオブジェクトで$orという名前の2つのフィールドを持つことができないので、それは賢明なクエリではありません。 1つの要素を持つ$orは、その要素と同じです。

だから、同じです:

ある
{TextField1: "N4JXFTNP64"} 

Find all documents where TextField1 equals "N4JXFTNP64" 
0

あなたはどちらかとドキュメントを一致させるために探している場合と同じである

{TextField1:{$eq:"N4JXFTNP64"}} 

次のいずれかになります。

{$または:[{テキストフィールド1: "foo1の"}、{テキストフィールド1: "foo2は"}]}

または...

{テキストフィールド1:{$で:[ "foo1の"、「foo2は"]}}

関連する問題