脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - 详解Pymongo常用查询方法总结

详解Pymongo常用查询方法总结

2021-08-30 00:58cw-Austin Python

这篇文章主要介绍了详解Pymongo常用查询方法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

1、安装所需模块

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

2、环境验证

详解Pymongo常用查询方法总结

3、连接数据库

  1. import pymongo
  2. def operating_mongodb():
  3. client = pymongo.MongoClient('ip_address', port)
  4. db_auth = client.database
  5. db_auth.authenticate("username", "password")
  6. db = client.db_name
  7. return db

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

  1. mongodb = operating_mongodb()
  2. search_set = mongodb.table_name

5、按照所需字段排序

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

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

第一种:search_set.find({})

第二种:search_set.find()

7、精确查询

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

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

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

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

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

9、比较查询

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

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

10、关联查询

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

$in和$nin

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

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

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

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

11、多条件模糊查询

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

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

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

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

原文链接:https://blog.csdn.net/qq_35959613/article/details/85708749

延伸 · 阅读

精彩推荐