Die Zeichenfolgenabfragen, die normalerweise unter der Decke liegen, sind alle Regex-Abfragen und wären daher weniger effizient. Ausnahme ist jedoch das Testen gegen Referenzfelder! Die folgenden Abfragen sind:
Model.objects.filter(refs__contains="5305c92956c02c3f391fcaba")._query
{'refs': ObjectId('5305c92956c02c3f391fcaba')}
Das ist eine direkte Suche.
Model.objects.filter(refs__in=["5305c92956c02c3f391fcaba"])._query
{'refs': {'$in': [ObjectId('5305c92956c02c3f391fcaba')]}}
Dies ist wahrscheinlich weniger effizient, wäre aber wahrscheinlich äußerst marginal. Die größte Auswirkung wäre die Anzahl der Dokumente und ob die refs
Feld hat einen Index.