📌  相关文章
📜  如何使用Python从 MongoDB 中获取数据?

📅  最后修改于: 2022-05-13 01:55:34.469000             🧑  作者: Mango

如何使用Python从 MongoDB 中获取数据?

MongoDB是一个跨平台、面向文档的数据库,它基于集合和文档的概念。 MongoDB 提供高速、高可用性和高可扩展性。

从 MongoDB 中获取数据

Pymongo 提供了多种从 mongodb 获取数据的方法。让我们一一看看。

1) Find One:此方法用于从 mongoDB 中的集合中获取数据。它返回第一次出现。
语法

find_one()

例子:

样本数据库:

python-mongodb-sample-数据

Python3
import pymongo
 
 
client = pymongo.MongoClient("mongodb://localhost:27017/")
 
# Database Name
db = client["database"]
 
# Collection Name
col = db["GeeksForGeeks"]
 
x = col.find_one()
 
print(x)


Python3
import pymongo
 
 
client = pymongo.MongoClient("mongodb://localhost:27017/")
 
# Database Name
db = client["database"]
 
# Collection Name
col = db["GeeksForGeeks"]
 
x = col.find()
 
for data in x:
    print(data)


Python3
import pymongo
 
 
client = pymongo.MongoClient("mongodb://localhost:27017/")
 
# Database Name
db = client["database"]
 
# Collection Name
col = db["GeeksForGeeks"]
 
# Fields with values as 1 will
# only appear in the result
x = col.find({},{'_id': 0, 'appliance': 1,
                 'rating': 1, 'company': 1})
 
for data in x:
    print(data)


输出

2) Find All:对于选择中的所有出现,使用 find() 方法。它的工作方式类似于 SQL 的 Select * 查询。
语法

find()

示例

Python3

import pymongo
 
 
client = pymongo.MongoClient("mongodb://localhost:27017/")
 
# Database Name
db = client["database"]
 
# Collection Name
col = db["GeeksForGeeks"]
 
x = col.find()
 
for data in x:
    print(data)

输出:

3)仅获取特定字段:如果您只想获取某些字段,则在 find 方法中将第一个参数作为 {} 传递,第二个参数作为 1 用于您想要获取的那些字段,0 用于那些您不想获取的字段拿来。
句法:

find({},{field_data:bool})

例子:

Python3

import pymongo
 
 
client = pymongo.MongoClient("mongodb://localhost:27017/")
 
# Database Name
db = client["database"]
 
# Collection Name
col = db["GeeksForGeeks"]
 
# Fields with values as 1 will
# only appear in the result
x = col.find({},{'_id': 0, 'appliance': 1,
                 'rating': 1, 'company': 1})
 
for data in x:
    print(data)

输出: