-1

次の2つのクエリが異なる結果を返す理由について私は混乱しています。

modelObj = connection.MyModel.find({'t': t,
               '$or': [{'cpd': None}, {'cpd': {'$gte': yesterday}}]})

modelObj = connection.MyModel.find({'t': t,
               'cpd': {'$in': [None, {'$gte': yesterday}]}})

両方の説明計画は多かれ少なかれ同じです。

2番目のクエリは、「'$ gte':yesterday」条件を無視しているようです。

なぜこれが起こっているのか誰かが私に説明できますか?

ありがとう。

4

1 に答える 1

1

$inフィールドを離散値の配列と照合するためにのみ使用でき、他の演算子は照合できません。

于 2012-08-23T13:23:14.033 に答える