mongodb-query auf DBRef-Typ

Wie schalte ich diese Abfrage in eine gültige mongodb-Query in mongodb shell.

{ 'cars.owner.$ref' : 'users' } 

cars.owner ist ein DBRef hier, aber $ref ist ungültig

Bekomme ich diesen Fehler:

"$err" : "Positional operator does not match the query specifier."

Mein Ziel hier um herauszufinden, wenn es irgendwelche Autos "besessen" von verschiedenen Sammlungen dann Benutzer.

  • Wenn Sie erlauben nur die Referenzen zu einer Sammlung, Sie sind in der Regel besser mit der Speicherung nur die _id statt einer DBRef.
  • Ich bin nur die Erkundung der Daten. Was ist die motivation für die nur die Speicherung der _id statt einer DBRef ?
  • DBRef ist im Grunde als veraltet und würde ich nicht halten viel Hoffnung für die laufende Treiber-Unterstützung in der Zukunft. Es war eine frühe Idee, nicht sehr gut konzipiert eine. Das format speichert die Feldnamen, die in Konflikt mit der nun etablierten Namenskonventionen für reservierte Zeichen, wie gut. Die Allgemeine Konvention ist nun einfach speichern _id des Dokuments und Optional die Sammlung und/oder Datenbank-namespace selbst, oder über das externe schema der Logik, beschreibt die Beziehungen und nur die _id. Beharren DBRef ist eine dunkle Straße, gefüllt mit Schrecken. Aussteigen, solange du kannst.
  • Wo in den docs finde ich, dass DBRef ist veraltet ?
  • Ein DBRef ist ein Objekt, das enthält die _id, die Sammlung und Optional die Datenbank. In den meisten Situationen, die Sie bereits wissen, die Sammlung und der Datenbank, in der Bezug genommen wird, gefunden werden, so sind Sie nutzlos aufblasen.
Schreibe einen Kommentar