Python MongoDB Cari

Dalam MongoDB, kami menggunakan metode find dan findOne untuk mencari data dalam koleksi.

seperti pernyataan SELECT digunakan untuk mencari data dalam tabel database MySQL.

Cari satu item

Untuk memilih data dalam koleksi MongoDB, kami dapat menggunakan find_one() Metode.

find_one() Metode ini mengembalikan item pertama yang cocok dalam pilihan.

Contoh

Cari dokumen pertama dalam koleksi customers:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
x = mycol.find_one()
print(x)

Jalankan Contoh

Cari semua

Untuk memilih data dari tabel MongoDB, kami masih dapat menggunakan find() Metode.

find() Metode ini mengembalikan semua item yang cocok dalam pilihan.

find() Parameter pertama adalah objek query. Dalam contoh ini, kami menggunakan objek query kosong, yang akan memilih semua dokumen dalam koleksi.

find() Metode ini tidak menyediakan parameter yang sama seperti SELECT * di MySQL.

Contoh

mengembalikan semua dokumen dalam koleksi "customers" dan mencetak setiap dokumen:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
for x in mycol.find():
  print(x)

Jalankan Contoh

hanya mengembalikan beberapa field

find() Pemasa parameter kedua adalah objek deskripsi yang mengandung field yang disertakan dalam hasil.

Parameter ini adalah pilihan, jika dilewati, maka semua field akan disertakan dalam hasil.

Contoh

Hanya mengembalikan nama dan alamat, bukan _ids:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
untuk x di mycol.find({},{ "_id": 0, "name": 1, "address": 1 }):
  print(x)

Jalankan Contoh

Tidak diizinkan untuk menentukan nilai 0 dan 1 di dalam objek yang sama secara bersamaan (kecuali salah satu field adalah _id). Jika field yang dijadikan nilai 0, maka nilai semua field lain adalah 1, dan sebaliknya:

Contoh

Contoh ini mengelompokkan "address" dari hasil:

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
untuk x di mycol.find({},{ "address": 0 }):
  print(x)

Jalankan Contoh

Contoh

Jika 0 dan 1 dijadikan nilai yang sama di dalam objek yang sama, akan muncul kesalahan (kecuali salah satu field adalah _id):

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
untuk x di mycol.find({},{ "name": 1, "address": 0 }):
  print(x)