Zeitliche Komplexität von $ addToset vs $ push, wenn das Element im Array nicht vorhanden ist

Vorausgesetzt: Die Verbindung ist sicher = wahr, sodass die Rückgabe von Update Update-Informationen enthält.

Angenommen, ich habe Dokumente, die wie folgt aussehen:

[{'a': [1]}, {'a': [2]}, {'a': [1,2]}]

Und ich stelle aus:

coll.update({}, {'$addToSet': {'a':1}}, multi=True)

Das Ergebnis wäre:

{u'connectionId': 28,
 u'err': None,
 u'n': 3,
 u'ok': 1.0,
 u'updatedExisting': True
}

Selbst wenn Dokumente kommen, haben sie diesen Wert bereits. Um dies zu vermeiden, könnte ich einen Befehl ausgeben.

coll.update({'a': {'$ne': 1}}, {'$push': {'a':1}}, multi=True)

Was ist der Zeitkomplexitätsvergleich für $ addToSet vs. $ push mit einem $ ne-Check?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage