详解Pymongo常用查询方法总结


Posted in Python onJanuary 29, 2021

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

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

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

Python 相关文章推荐
Python内置的字符串处理函数整理
Jan 29 Python
收藏整理的一些Python常用方法和技巧
May 18 Python
python基于twisted框架编写简单聊天室
Jan 02 Python
Python for循环与range函数的使用详解
Mar 23 Python
Win10系统下安装labelme及json文件批量转化方法
Jul 30 Python
Python Pandas对缺失值的处理方法
Sep 27 Python
Python异常模块traceback用法实例分析
Oct 22 Python
python实现文字版扫雷
Apr 24 Python
解决echarts中饼图标签重叠的问题
May 16 Python
深入了解Python装饰器的高级用法
Aug 13 Python
python 实用工具状态机transitions
Nov 21 Python
Python 类,对象,数据分类,函数参数传递详解
Sep 25 Python
Python3使用tesserocr识别字母数字验证码的实现
Jan 29 #Python
Python爬取梨视频的示例
Jan 29 #Python
使用Python封装excel操作指南
Jan 29 #Python
用OpenCV进行年龄和性别检测的实现示例
Jan 29 #Python
python使用numpy中的size()函数实例用法详解
Jan 29 #Python
Python机器学习工具scikit-learn的使用笔记
Jan 28 #Python
K近邻法(KNN)相关知识总结以及如何用python实现
Jan 28 #Python
You might like
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
2018/05/23 PHP
深入理解 PHP7 中全新的 zval 容器和引用计数机制
2018/10/15 PHP
js获取图片大小的函数代码
2011/09/20 Javascript
JavaScript字符串String和Array操作的有趣方法
2012/12/18 Javascript
做好七件事帮你提升jQuery的性能
2014/02/06 Javascript
对比分析AngularJS中的$http.post与jQuery.post的区别
2015/02/27 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
jQuery Real Person验证码插件防止表单自动提交
2015/11/06 Javascript
原生JS封装Ajax插件(同域、jsonp跨域)
2016/05/03 Javascript
js实现拖拽功能
2017/03/01 Javascript
浅谈Vue 初始化性能优化
2017/08/31 Javascript
详解Angular模板引用变量及其作用域
2018/11/23 Javascript
js代码编写无缝轮播图
2020/09/13 Javascript
python实现apahce网站日志分析示例
2014/04/02 Python
开源Web应用框架Django图文教程
2017/03/09 Python
利用python操作SQLite数据库及文件操作详解
2017/09/22 Python
celery4+django2定时任务的实现代码
2018/12/23 Python
python日志logging模块使用方法分析
2019/05/23 Python
详解Python中的各种转义符\n\r\t
2019/07/10 Python
python实现的爬取电影下载链接功能示例
2019/08/26 Python
Python 3 使用Pillow生成漂亮的分形树图片
2019/12/24 Python
python 解决tqdm模块不能单行显示的问题
2020/02/19 Python
经验丰富程序员才知道的8种高级Python技巧
2020/07/27 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
HTML5 CSS3给网站设计带来出色效果
2009/07/16 HTML / CSS
CSS3关于z-index不生效问题的解决
2020/02/19 HTML / CSS
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
介绍一下linux文件系统分配策略
2012/11/17 面试题
财务部总监岗位职责
2014/03/12 职场文书
志愿者活动总结范文
2014/04/26 职场文书
农村党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
骨干教师申报材料
2014/12/17 职场文书
故宫导游词
2015/01/31 职场文书
追悼会家属答谢词
2015/09/29 职场文书
Java常用工具类汇总 附示例代码
2021/06/26 Java/Android