MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mit Mongoid eindeutige Zeilen im Geltungsbereich finden

Obwohl es nicht so sauber ist, wie nur .distinct aufrufen zu können Nach bestimmten Kriterien liefert diese Problemumgehung die erwarteten Ergebnisse:

Person.find(Person.nearby(location_in_new_york, 1).distinct(:_id))

Dies funktioniert (wie geschrieben) jedoch nicht als Bereich, also müssten Sie es zu einer Klassenmethode machen. Persönlich würde ich versuchen, mongoid einen Patch hinzuzufügen, um eine .unique hinzuzufügen -Methode, die tut, was Sie wollen (da MongoDB für die Rückgabe von Feldwerten anstelle von Dokumenten verantwortlich ist, wenn Sie ihren eindeutigen Operator verwenden:http://www.mongodb.org/display/DOCS/Aggregation )