MongoDB是跨平台的面向文档的数据库程序, 也是最受欢迎的NoSQL数据库程序。术语NoSQL表示非关系。 MongoDB以键值对的形式存储数据。它是一个开源的文档数据库, 可提供高性能和可伸缩性, 以及企业应用程序中海量数据集的数据建模和数据管理。 MongoDB还提供了自动扩展功能。它使用类似于JSON的文档, 这使得数据库非常灵活且可扩展。
从集合或数据库中查找数据
在MongoDB中, 有2个函数可用于从集合或数据库中查找数据。
- find_one()
- find()
find_one()
在MongoDB中, 要使用集合中的数据来选择找一个()方法。它返回选择中的第一个出现的信息, 并返回作为输出。在找一个()方法不需要参数, 因为它带来了数据库中第一次出现的信息。
范例1:从学生的馆藏/数据库中查找第一个文档。
假设数据库如下所示–
# Python program to demonstrate
# find_one()
import pymongo
mystudent = pymongo.MongoClient( 'localhost' , 27017 )
# Name of the databse
mydb = mystudent[ "gfg" ]
# Name of the collection
mycol = mydb[ "names" ]
x = mycol.find_one()
print (x)
输出:
find()
find()方法用于从数据库中选择数据。它返回所有出现在集合中的信息。它有2种类型的参数, 找()方法是一个查询对象。在下面的示例中, 我们将使用一个空的Query对象, 该对象将从集合中选择所有信息。
注意:它的工作原理与选择*没有任何参数。
例子:
import pymongo
# establishing connection
# to the database
my_client = pymongo.MongoClient( 'localhost' , 27017 )
# Name of the databse
mydb = my_client[ "gfg" ]
# Name of the collection
mynew = mydb[ "names" ]
for x in mycol.find():
print (x)
输出:
find()方法的第二个参数是你可以指定要包含在结果中的字段。在find()方法中传递的第二个参数是描述字段的对象类型。因此, 此参数是可选的。
如果省略, 则来自集合/数据库的所有字段将显示在结果中。
要将字段包括在结果中, 传递的参数的值应为1, 如果值为0, 则将其从结果中排除。
例子:仅返回名称和地址, 而不返回ID:
import pymongo
# establishing connection
# to the database
my_client = pymongo.MongoClient( 'localhost' , 27017 )
# Name of the databse
mydb = my_client[ "gfg" ]
# Name of the collection
mynew = mydb[ "names" ]
for x in mycol.find({}, { "_id" : 0 , "name" : 1 , "address" : 1 }):
print (x)
输出如下:
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。