详解Pymongo常用查询方法总结

 更新时间:2021年01月29日 10:18:31   作者:cw-Austin  
这篇文章主要介绍了详解Pymongo常用查询方法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

Python 直接连接mongodb数据库进行查询操作

1、安装所需模块

使用到的是pymongo模块,安装方法:pip install pymongo

2、环境验证

3、连接数据库

import pymongo
def operating_mongodb():
  client = pymongo.MongoClient('ip_address', port)
  db_auth = client.database
  db_auth.authenticate("username", "password")
  db = client.db_name
  return db

4、连接到对应的数据库表

mongodb = operating_mongodb()
search_set = mongodb.table_name

5、按照所需字段排序

search_set.find().sort("field_name ",pymongo.ASCENDING)   --升序
search_set.find().sort("field_name ",pymongo.DESCENDING)  --降序

6、查询数据库表的全部内容

第一种:search_set.find({})

第二种:search_set.find()

7、精确查询

search_set.find({“field_name”:”value”})
search_set.find({“field_name”:”value”, “field_name”:”value”})

8、只返回所需要的字段信息

find的第二参数可以帮助我们只把需要的键值信息返回,需要将我们需要的键指定为1,

另外默认的”_id”默认是返回的,我们不需要它返回的话将它的值设为0

search_set.find({}, {“field_name_one”:1, “field_name_two”:1,”_id”:0})

9、比较查询

首先 $lt和<,$lte和<=,$gt和>,gte和>=,ne和!=是一一对应的

search_set.find({"field_name": {"$lt": value, "$gt": value}})

10、关联查询

如果只想查询一个键的多个值,或取除某个值之外所有的数据那么就用到了

$in和$nin

比如我只想获取field_name为1,5,8的数据:

search_set.find({"field_name": {"$in": [1,5,8]}})

如果想获取field_name为5之外的所有数据:

search_set.find({"field_name": {"$nin": [5]}})

11、多条件模糊查询

$regex为模糊查询的字符串提供正则表达式功能

search_set.find({"$or": [{"field_name": {'$regex': value}},{"field_name": {'$regex': value}}]})

通过这些常用的查询方法,灵活组合,基本可以满足常见的查询需求

到此这篇关于详解Pymongo常用查询方法总结的文章就介绍到这了,更多相关Pymongo 查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python入门学习指南分享

    Python入门学习指南分享

    这篇文章主要为大家详细介绍了Python入门的学习指南,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • Django3.2 自动发现所有路由代码详解

    Django3.2 自动发现所有路由代码详解

    这篇文章主要为大家介绍了Django自动发现所有路由的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • Python发送邮件的几种方式(最全总结!)

    Python发送邮件的几种方式(最全总结!)

    发送电子邮件是个很常见的开发需求,平时如果有什么重要的信息怕错过,就可以发个邮件到邮箱来提醒自己,这篇文章主要给大家介绍了关于Python发送邮件的几种方式,需要的朋友可以参考下
    2024-03-03
  • Python识别处理照片中的条形码

    Python识别处理照片中的条形码

    这篇文章主要介绍了Python识别处理照片中的条形码,帮助大家更好的利用python处理图片,提高办公效率,感兴趣的朋友可以了解下
    2020-11-11
  • Django中的ajax请求

    Django中的ajax请求

    今天小编就为大家分享一篇关于Django中的ajax请求,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Python使用Selenium时遇到网页<body>划不动的问题解决方法

    Python使用Selenium时遇到网页<body>划不动的问题解决方法

    如果在使用 Selenium 时遇到网页的 <body> 划不动的问题,这通常是因为页面的滚动机制(例如,可能使用了一个具有固定高度的容器或自定义的滚动条)导致无法通过简单的 JavaScript 实现滚动,可以通过以下方法来解决该问题
    2024-10-10
  • python中的pyc文件是什么

    python中的pyc文件是什么

    这篇文章主要介绍了python中的pyc文件是什么,pyc文件是Python编译过的字节码文件,这个字节码是一种低级的、与平台无关的代码,还不知道的朋友来了解一下吧
    2023-04-04
  • Python实现读取机器硬件信息的方法示例

    Python实现读取机器硬件信息的方法示例

    这篇文章主要介绍了Python实现读取机器硬件信息的方法,涉及Python针对计算机注册表、操作系统、处理器、网络等常见硬件信息读取操作相关实现技巧,需要的朋友可以参考下
    2018-06-06
  • django多文件上传,form提交,多对多外键保存的实例

    django多文件上传,form提交,多对多外键保存的实例

    今天小编就为大家分享一篇django多文件上传,form提交,多对多外键保存的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • python 计算平均平方误差(MSE)的实例

    python 计算平均平方误差(MSE)的实例

    今天小编就为大家分享一篇python 计算平均平方误差的实例 (MSE),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06

最新评论