通常、内部にある文字列クエリはすべて正規表現クエリであるため、効率が低下します。ただし、例外は参照フィールドに対してテストする場合です。次のクエリは次のとおりです。
Model.objects.filter(refs__contains="5305c92956c02c3f391fcaba")._query
{'refs': ObjectId('5305c92956c02c3f391fcaba')}
これは直接検索です。
Model.objects.filter(refs__in=["5305c92956c02c3f391fcaba"])._query
{'refs': {'$in': [ObjectId('5305c92956c02c3f391fcaba')]}}
これはおそらく効率が悪いですが、おそらく非常にわずかです。最大の影響は、ドキュメントの数とrefs
かどうかです。 フィールドにはインデックスがあります。