Recherche MongoDB Python
- Page précédente Trouver MongoDB
- Page suivante Trier MongoDB
Filtrer les résultats
Lorsque vous cherchez des documents dans une collection, vous pouvez utiliser l'objet query pour filtrer les résultats.
find()
Le premier paramètre de la méthode est l'objet query, utilisé pour restreindre la recherche.
Exemple
Recherche de documents dont l'adresse est "Allée du Parc 38":
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = { "address": "Allée du Parc 38" } mydoc = mycol.find(myquery) for x in mydoc: print(x)
Recherche avancée
Pour effectuer des recherches avancées, vous pouvez utiliser des modificateurs comme valeurs des objets de recherche.
Par exemple, pour rechercher les documents whose "address" field starts with the letter "S" or higher (in alphabetical order), use the greater modifier:{"$gt": "S"}
:
Exemple
Recherche de documents whose "address" starts with the letter "S" or higher:
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)
Filtrer en utilisant les expressions régulières
Vous pouvez également utiliser les expressions régulières comme modificateurs.
Les expressions régulières ne peuvent être utilisées que pour les recherches de chaînes de caractères.
Pour rechercher uniquement les documents whose "address" field starts with the letter "S", use a regular expression {"$regex": "^S"}
:
Exemple
Recherche de documents whose "address" starts with the letter "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)
- Page précédente Trouver MongoDB
- Page suivante Trier MongoDB