Python MongoDB-søgning
- Forrige Side MongoDB Find
- Næste Side MongoDB Sorter
Filtrer resultater
Når du søger efter dokumenter i en samling, kan du bruge query-objektet til at filtrere resultaterne.
find()
Den første parameteren er query-objektet, som bruges til at begrænse søgningen.
Eksempel
Findes dokumenter med adresse "Park Lane 38":
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": "Park Lane 38" } mydoc = mycol.find(myquery) for x in mydoc: print(x)
Avancerede søgninger
For at udføre avancerede søgninger kan du bruge præfikker som værdier i søgeobjektet.
For eksempel, for at finde dokumenter, hvor "address"-feltet starter med bogstavet "S" eller højere (i alfabetisk rækkefølge), skal du bruge en større end præфик:{"$gt": "S"}
:
Eksempel
Find dokumenter, hvor adressen starter med bogstavet "S" eller højere:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": { "$gt": "S" } mydoc = mycol.find(myquery) for x in mydoc: print(x)
Brug regulære udtryk til at filtrere
Du kan også bruge regulære udtryk som en præфик.
Regulære udtryk kan kun bruges i søgestrengene.
Hvis du kun vil finde dokumenter, hvor "address"-feltet starter med bogstavet "S", skal du bruge en regulær udtryk {"$regex": "^S"}
:
Eksempel
Find dokumenter, hvor adressen starter med bogstavet "S":
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": { "$regex": "^S" } mydoc = mycol.find(myquery) for x in mydoc: print(x)
- Forrige Side MongoDB Find
- Næste Side MongoDB Sorter