Temukan Python MongoDB
Di MongoDB kami menggunakan metode find dan findOne untuk menemukan data dalam koleksi.
Sama seperti pernyataan SELECT yang digunakan untuk mencari data dalam tabel di database MySQL.
Temukan Satu
Untuk memilih data dari koleksi di MongoDB, kita bisa menggunakan
find_one()
metode.
Metode find_one()
mengembalikan kemunculan pertama dalam seleksi.
Contoh
Temukan dokumen pertama dalam koleksi pelanggan:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
x = mycol.find_one()
print(x)
Temukan semua
Untuk memilih data dari tabel di MongoDB, kita juga bisa menggunakan
find()
metode.
Metode find()
mengembalikan semua kejadian dalam seleksi.
Parameter pertama dari find()
metode ini adalah objek kueri. Dalam contoh ini kami menggunakan objek kueri kosong, yang memilih semua dokumen dalam koleksi.
Tidak ada parameter dalam metode find() yang memberi Anda hasil yang sama seperti SELECT * di MySQL.
Contoh
Kembalikan semua dokumen dalam koleksi "pelanggan", dan cetak setiap dokumen:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find():
print(x)
Kembali Hanya Beberapa Bidang
Parameter kedua dari find()
metode ini adalah objek yang menjelaskan bidang mana yang akan disertakan dalam hasil.
Parameter ini opsional, dan jika dihilangkan, semua bidang akan disertakan dalam hasil.
Contoh
Kembalikan hanya nama dan alamat, bukan _id:
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)
Anda tidak diperbolehkan untuk menentukan nilai 0 dan 1 dalam objek yang sama (kecuali jika salah satu bidang adalah bidang _id). Jika Anda menentukan bidang dengan nilai 0, semua bidang lainnya mendapatkan nilai 1, dan sebaliknya:
Contoh
Contoh ini akan mengecualikan "alamat" dari hasil:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find({},{ "address": 0 }):
print(x)
Contoh
Anda mendapatkan kesalahan jika Anda menentukan nilai 0 dan 1 di objek yang sama (kecuali jika salah satu bidangnya adalah bidang _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)