详解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计算三角函数之asin()方法的使用
May 15 Python
Python中random模块生成随机数详解
Mar 10 Python
sublime text 3配置使用python操作方法
Jun 11 Python
Python基于numpy灵活定义神经网络结构的方法
Aug 19 Python
python操作MySQL 模拟简单银行转账操作
Sep 27 Python
pymongo中聚合查询的使用方法
Mar 22 Python
详解Python 调用C# dll库最简方法
Jun 20 Python
Python 日期区间处理 (本周本月上周上月...)
Aug 08 Python
Python判断字符串是否xx开始或结尾的示例
Aug 08 Python
python环境下安装opencv库的方法
Mar 05 Python
pytorch查看模型weight与grad方式
Jun 24 Python
Python实现文件压缩和解压的示例代码
Aug 12 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
一个简单的MySQL数据浏览器
2006/10/09 PHP
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
2010/06/11 PHP
探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释
2013/06/24 PHP
php中heredoc与nowdoc介绍
2014/12/25 PHP
php获取flash尺寸详细数据的方法
2016/11/12 PHP
PHP实现一个限制实例化次数的类示例
2019/09/16 PHP
javascript Select标记中options操作方法集合
2008/10/22 Javascript
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
jquery异步调用页面后台方法&amp;#8207;(asp.net)
2011/03/01 Javascript
JavaScript实现拖拽网页内元素的方法
2015/04/15 Javascript
AngularJS中的过滤器使用详解
2015/06/16 Javascript
jquery ztree实现模糊搜索功能
2016/02/25 Javascript
js中window.open的参数及注意注意事项
2016/07/06 Javascript
老生常谈javascript变量的命名规范和注释
2016/09/29 Javascript
jQuery实现可编辑表格并生成json结果(实例代码)
2017/07/19 jQuery
不到200行 JavaScript 代码实现富文本编辑器的方法
2018/01/03 Javascript
react 组件传值的三种方法
2019/06/03 Javascript
详解nuxt 微信公众号支付遇到的问题与解决
2019/08/26 Javascript
在vscode 中设置 vue模板内容的方法
2020/09/02 Javascript
深入理解python中的select模块
2017/04/23 Python
Python之用户输入的实例
2018/06/22 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
在python中用print()输出多个格式化参数的方法
2019/07/16 Python
Django使用模板后无法找到静态资源文件问题解决
2019/07/19 Python
python输出pdf文档的实例
2020/02/13 Python
Python实现Keras搭建神经网络训练分类模型教程
2020/06/12 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
python cookie反爬处理的实现
2020/11/01 Python
Pycharm plot独立窗口显示的操作
2020/12/11 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
自动化专业个人求职信范文
2013/11/29 职场文书
英语教学随笔感言
2014/02/20 职场文书
社区先进事迹材料
2014/05/19 职场文书
技校毕业生自荐书
2014/05/23 职场文书
2016年大学生寒假社会实践心得体会
2015/10/09 职场文书
《颐和园》教学反思
2016/02/19 职场文书