Python MongoDB –查找数据用法介绍

2021年3月11日17:50:24 发表评论 849 次浏览

MongoDB是跨平台的面向文档的数据库程序, 也是最受欢迎的NoSQL数据库程序。术语NoSQL表示非关系。 MongoDB以键值对的形式存储数据。它是一个开源的文档数据库, 可提供高性能和可伸缩性, 以及企业应用程序中海量数据集的数据建模和数据管理。 MongoDB还提供了自动扩展功能。它使用类似于JSON的文档, 这使得数据库非常灵活且可扩展。

从集合或数据库中查找数据

在MongoDB中, 有2个函数可用于从集合或数据库中查找数据。

  • find_one()
  • find()

find_one()

在MongoDB中, 要使用集合中的数据来选择找一个()方法。它返回选择中的第一个出现的信息, 并返回作为输出。在找一个()方法不需要参数, 因为它带来了数据库中第一次出现的信息。

范例1:从学生的馆藏/数据库中查找第一个文档。

假设数据库如下所示–

python-mongodb-db1
# 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)

输出:

python-mongodb-find-one1

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)

输出:

python-mongodb-find-2

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-mongodb-3

注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。

首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。


木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: