详解Pymongo常用查询方法总结

作者:cw-Austin 时间:2022-06-01 09:13:30 

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

1、安装所需模块

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

2、环境验证

详解Pymongo常用查询方法总结

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}}]})

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

来源:https://blog.csdn.net/qq_35959613/article/details/85708749

标签:Pymongo,查询
0
投稿

猜你喜欢

  • python在命令行下使用google翻译(带语音)

    2023-06-02 13:47:17
  • pycharm设置鼠标悬停查看方法设置

    2022-12-25 16:04:31
  • python输出数组中指定元素的所有索引示例

    2021-11-27 02:21:09
  • Appium自动化测试中获取Toast信息操作

    2022-05-12 07:10:48
  • 详解MySQL分组链接的使用技巧

    2024-01-14 03:40:37
  • mysql 导出CSV文件 并带表头的方法

    2024-01-21 20:40:35
  • pywinauto自动化操作记事本

    2021-07-19 03:01:57
  • vue3的watch用法以及和vue2中watch的区别

    2024-04-30 08:42:37
  • Python实现注册登录系统

    2021-10-21 20:01:05
  • Python如何安装第三方模块

    2023-08-01 12:50:07
  • pyecharts实现数据可视化

    2023-05-24 06:18:48
  • python实现的重启关机程序实例

    2023-08-09 22:54:20
  • MySQL分区之RANGE分区详解

    2024-01-19 09:24:20
  • Python 编程语言详细介绍

    2022-08-21 08:39:27
  • GoFrame通用类型变量gvar与interface基本使用对比

    2024-04-27 15:26:26
  • Python中max函数用于二维列表的实例

    2022-07-04 15:49:55
  • 解析Golang中的GoPath和GoModule

    2024-05-09 14:56:48
  • Java游戏服务器之数据库表存取封装

    2024-01-13 13:08:17
  • 终于搞懂了Python中super(XXXX, self).__init__()的作用了

    2022-01-04 00:35:44
  • python 装饰器(Decorators)原理说明及操作代码

    2023-12-11 19:06:50
  • asp之家 网络编程 m.aspxhome.com