2012-04-05 4 views
4

Wie man eine Auswahl trifft PyMongo nur einzigartige Aufzeichnungen?Wie man eine Auswahl trifft PyMongo nur einzigartige Aufzeichnungen?

>>> db.houses.find({"street":{"$regex": "Fl", "$options":"i"}}).count() 
107 
>>> for item in db.houses.find({"street":{"$regex": "Fl", "$options":"i"}}): 
... print item["street"] 
... 
Flatbush Avenue 
Flatbush Avenue 
Flatbush Avenue 
Flatlands Avenue 
Flatlands Avenue 
Flatlands Avenue 
Flatlands Avenue 
Flatlands Avenue 
Flushing Avenue 
Flushing Avenue 
...more 

Wie erhält man eine eindeutige Aufzeichnung nur "Straße" als Antwort auf eine Abfrage? Das heißt, um doppelte Datensätze zu vermeiden:

Flatbush Avenue 
Flatlands Avenue 
Flushing Avenue 
+0

Sie sollten ein Beispiel mit englischen Namen geschrieben. Einige Systeme können dies nicht anzeigen. Und das sieht für die meisten Leute sowieso chinesisch aus :) –

+0

Danke für den Hinweis. Korrigiert. –

Antwort

10

Nach den docs - Cursor.distinct den Trick tun sollten:

db.houses.find({"street":{"$regex": "май", "$options":"i"}}).distinct("street") 
+0

Vielen Dank! Es ist Arbeit! –

Verwandte Themen