Python MongoDB Εύρεση
- Προηγούμενη Σελίδα MongoDB Insert
- Επόμενη Σελίδα MongoDB Query
Στο MongoDB, χρησιμοποιούμε τις μεθόδους find και findOne για την εύρεση δεδομένων στη συλλογή.
Καθώς η εντολή SELECT χρησιμοποιείται για την εύρεση δεδομένων από τις στήλες της βάσης δεδομένων MySQL.
Εύρεση ενός στοιχείου
Για να επιλέξουμε δεδομένα από τη συλλογή του MongoDB, μπορούμε να χρησιμοποιήσουμε find_one()
Μέθοδος.
find_one()
Η μέθοδος επιστρέφει το πρώτο ταιριάζοντα στοιχείο της επιλογής.
Παράδειγμα
Εύρεση του πρώτου εγγράφου στη συλλογή "customers":
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] x = mycol.find_one() print(x)
Εύρεση όλων
Για να επιλέξουμε δεδομένα από τη στήλη του MongoDB, μπορούμε επίσης να χρησιμοποιήσουμε find()
Μέθοδος.
find()
Η μέθοδος επιστρέφει όλα τα ταιριάζοντα στοιχεία της επιλογής.
find()
Ο πρώτος παράμετρος της μεθόδου είναι το αντικείμενο query. Σε αυτό το παράδειγμα, χρησιμοποιήσαμε ένα κενό αντικείμενο query, το οποίο επιλέγει όλα τα έγγραφα της συλλογής.
find()
Η μέθοδος δεν παρέχει παραμέτρους που παρέχουν το ίδιο αποτέλεσμα με το SELECT * στο MySQL.
Παράδειγμα
Επιστρέφει όλους τους έγγραφα της συλλογής "customers" και εκτυπώνει κάθε έγγραφο:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] για x σε mycol.find(): print(x)
Επιστρέφει μόνο ορισμένα πεδία
find()
Ο δεύτερος παράμετρος της μεθόδου είναι το αντικείμενο που περιγράφει τα πεδία που περιλαμβάνονται στο αποτέλεσμα.
Αυτός ο παράμετρος είναι προαιρετικός. Αν παραλειφθεί, όλα τα πεδία θα περιλαμβάνονται στα αποτελέσματα.
Παράδειγμα
Επιστρέφει μόνο το όνομα και τη διεύθυνση, όχι τα _ids:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] for x in mycol.find({},{ "_id": 0, "name": 1, "address": 1 }): print(x)
Δεν επιτρέπεται να οριστούν ταυτόχρονα τιμές 0 και 1 στον ίδιο αντικείμενο (μαζί με εξαίρεση αν ένας από τους πεδία είναι το πεδίο _id). Αν οριστεί τιμή 0 για το πεδίο, τότε όλες οι άλλες τιμές θα είναι 1 και vice versa:
Παράδειγμα
Αυτό το παράδειγμα αφαιρεί το "address" από τα αποτελέσματα:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] for x in mycol.find({},{ "address": 0 }): print(x)
Παράδειγμα
Αν οριστούν ταυτόχρονα τιμές 0 και 1 στον ίδιο αντικείμενο, θα εμφανιστεί σφάλμα (μαζί με εξαίρεση αν ένας από τους πεδία είναι το πεδίο _id):
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] for x in mycol.find({},{ "name": 1, "address": 0 }): print(x)
- Προηγούμενη Σελίδα MongoDB Insert
- Επόμενη Σελίδα MongoDB Query