详解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开发中如何使用Hook技巧
Nov 01 Python
python3获取两个日期之间所有日期,以及比较大小的实例
Apr 08 Python
wxPython的安装与使用教程
Aug 31 Python
python3学生名片管理v2.0版
Nov 29 Python
如何在python中写hive脚本
Nov 08 Python
Django中使用MySQL5.5的教程
Dec 18 Python
python文件和文件夹复制函数
Feb 07 Python
关于Tensorflow 模型持久化详解
Feb 12 Python
Python之变量类型和if判断方式
May 05 Python
python开根号实例讲解
Aug 30 Python
Python生成并下载文件后端代码实例
Aug 31 Python
利用python批量爬取百度任意类别的图片的实现方法
Oct 07 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 调用远程url的六种方法小结
2009/11/02 PHP
使用php清除bom示例
2014/03/03 PHP
yii操作session实例简介
2014/07/31 PHP
PHP连接sql server 2005环境配置及问题解决
2014/08/08 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
ThinkPHP下表单令牌错误与解决方法分析
2017/05/20 PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
2019/10/09 PHP
PHP时间相关常用函数用法示例
2020/06/03 PHP
jquery getScript动态加载JS方法改进详解
2012/11/15 Javascript
Jquery模仿Baidu、Google搜索时自动补充搜索结果提示
2013/12/26 Javascript
常规表格多表头查询示例
2014/02/21 Javascript
jquery 实现两级导航菜单附效果图
2014/03/07 Javascript
jquery幻灯片插件bxslider样式改进实例
2014/10/15 Javascript
javascript实现淘宝幻灯片广告展示效果
2015/04/27 Javascript
jQuery form插件的使用之处理server返回的JSON, XML,HTML数据
2016/01/26 Javascript
jquery实现页面常用的返回顶部效果
2016/03/04 Javascript
基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
2016/03/07 Javascript
基于jQuery实现Ajax验证用户名是否存在实例
2016/03/30 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
jQuery弹出窗口打开链接的实现代码
2016/12/24 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
2017/03/13 Javascript
JS闭包可被利用的常见场景小结
2017/04/09 Javascript
详解React开发必不可少的eslint配置
2018/02/05 Javascript
VUE v-model表单数据双向绑定完整示例
2019/01/21 Javascript
vue 中固定导航栏的实例代码
2019/11/01 Javascript
Python使用MD5加密字符串示例
2014/08/22 Python
基于python的opencv图像处理实现对斑马线的检测示例
2020/11/29 Python
html5中监听canvas内部元素点击事件的三种方法
2019/04/28 HTML / CSS
HTML5在a标签内放置块级元素示例代码
2013/08/23 HTML / CSS
通信工程专业女生个人求职信
2013/09/21 职场文书
致跳远运动员广播稿
2014/02/11 职场文书
项目采购员岗位职责
2014/04/15 职场文书
经管应届生求职信范文
2014/05/18 职场文书
教师节标语大全
2014/10/07 职场文书
Python爬虫入门案例之爬取二手房源数据
2021/10/16 Python