本文实例讲述了Python操作mongodb数据库进行模糊查询操作。分享给大家供大家参考,具体如下:

# -*- coding: utf-8 -*-

import pymongo

import re

from pymongo import MongoClient

#创建连接

#10.20.66.106

client = MongoClient('10.20.4.79',27017)

#client = MongoClient('10.20.66.106',27017)

db_name = 'ta'

db = client[db_name]

假设mongodb数据库中school 集合中有一些数据记录

{ "_id" : 1,"zipcode" : "63109","students" : { "comments" : "python abc" } }

{ "_id" : 2,"zipcode" : "63110","students" : { "comments" : "python abc" } }

{ "_id" : 3,"students" : { "comments" : "python abc" } }

{ "_id" : 4,"students" : { "comments" : "python abc" } }

{ "_id" : 5,"students" : { "comments" : "python abc" } }

{ "_id" : 7,"students" : { "comments" : "python abc" },"school" : "102 python abc" }

{ "_id" : 8,"school" : "100 python abc xyz" }

{ "_id" : 9,"zipcode" : "100","students" : { "name" : "mike","age" : 12,"comments" : "python" } }

{ "_id" : 10,"students" : { "name" : "Marry","age" : 42,"comments" : "this is a python" } }

{ "_id" : 11,"students" : { "name" : "joe","age" : 92,"comments" : "this is a python program" } }

{ "_id" : 12,"students" : { "name" : "joedd","age" : 34,"comments" : "python is a script language" } }

现在要对students中comments的数据进行模糊查询,python中模糊查询要借助正则表达式:

1、查询comments中包含"abc"的记录:

for u in db.school.find({'students.comments':re.compile('abc')}):

print u

结果如下:

{u'students': {u'comments': u'python abc'},u'_id': 1.0,u'zipcode': u'63109'}

{u'students': {u'comments': u'python abc'},u'_id': 2.0,u'zipcode': u'63110'}

{u'students': {u'comments': u'python abc'},u'_id': 3.0,u'_id': 4.0,u'_id': 5.0,u'school': u'102 python abc',u'_id': 7.0,u'school': u'100 python abc xyz',u'_id': 8.0,u'zipcode': u'63109'}

2、查询comments中包含"this is"的记录:

for u in db.school.find({'students.comments':re.compile('this is')}):

print u

结果如下:

{u'students': {u'age': 42.0,u'name': u'Marry',u'comments': u'this is a python'},u'_id': 10.0,u'zipcode': u'100'}

{u'students': {u'age': 92.0,u'name': u'joe',u'comments': u'this is a python program'},u'_id': 11.0,u'zipcode': u'100'}

由此可见,模糊查询要用到re模块,查询条件利用re.compile()函数

希望本文所述对大家Python程序设计有所帮助。

python数据库模糊查询_Python操作mongodb数据库进行模糊查询操作示例相关推荐

  1. 用python向mongodb插入数据_Python操作MongoDB数据库(一)

    Python操作MongoDB数据库(一) 前言 干货文章继续出发!隔的时间有些久了哈,对 MongoDB 安装回顾的同学,可以看下windows环境 <初识 MongoDB 数据库>.这 ...

  2. Python 操作 MongoDB 数据库!

    作者 |黄伟呢 来源 |数据分析与统计学之美 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 先来看看MySQL与MongoDB 概念区别 ...

  3. 58 Node.js中操作mongoDB数据库

    技术交流 QQ 群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder 的程序人生 1.数据库概述及环境搭建 1.1 为什么要使用数据库 动态网站中的数据都是存储在数据 ...

  4. PHP操作mongodb数据库操作类

    最近的项目开发中使用的数据库是mongodb数据库,因为小编的公司也是刚刚使用mongodb数据库,所以之前没有封装好的mongodb数据库操作类拿来使用,所以小编在项目中自己封装了一个mongodb ...

  5. Java操作MongoDB数据库(简明版)

    除了通过启动 mongo 进程进如 Shell 环境访问数据库外,MongoDB 还提供了其他基于编程语言的访问数据库方法.MongoDB 官方提供了 Java 和 Python 语言的驱动包,利用这 ...

  6. Nodejs 操作 MongoDb 数据库

    一.在 Nodejs 中使用 Mongodb 在前面的博文我们给大家讲了如何使用命令操作 Mongodb,这篇博文开始我们给大家讲解一 下如何使用 Nodejs 来操作 Mongodb 数据库 Nod ...

  7. 使用mongoose 在 Node中操作MongoDB数据库

    MongoDB 关系型和非关系型数据库 关系型数据库(表就是关系,或者说表与表之间存在关系). 所有的关系型数据库都需要通过sql语言来操作 所有的关系型数据库在操作之前都需要设计表结构 而且数据表还 ...

  8. php mongoclient使用,PHP使用mongoclient简单操作mongodb数据库示例

    本文实例讲述了PHP使用mongoclient简单操作mongodb数据库.分享给大家供大家参考,具体如下: 最好回到<mongodb shell基础命令[进阶篇]>,再来看这里的内容,否 ...

  9. 操作Mongodb数据库及性能测试

    文章目录 操作Mongodb数据库,性能测试 引入mongodb模板 开启mongodb数据库 连接mongodb数据库 插入一条数据 查询全部数据 测试性能 操作Mongodb数据库,性能测试 目标 ...

最新文章

  1. 【一步步学小程序】1.创建项目以及TabBar
  2. 设计模式之创建型模式
  3. 关于Tomcat无法启动的问题(Server Tomcat v7.0 Server at localhost failed to start.)
  4. 淘宝弹性布局方案lib-flexible研究
  5. 业务中台01:中台解决方案本质在解决什么问题?
  6. netstat(win)
  7. ajax,training my javascript!手写AJAX,用POST方法传值
  8. Tcl与Design Compiler (八)——DC的逻辑综合与优化
  9. QT中ui更改后不能更新的解决方法
  10. OpenCV配置及开发中遇到的问题
  11. 写在2012的最后一天
  12. mysql 外键约束条件_MySQL-条件外键约束-问答-阿里云开发者社区-阿里云
  13. 使用Echarts绘制省份地图源码
  14. 安全生产知识竞赛答题小程序
  15. Window10 Excel复制粘贴卡死
  16. 高考早知道:自主招生,能用低分读名校,就别再拼高分挤独木桥
  17. 真正影响孩子一生的不是中高考,而是四、五年级!(深度好文)方格教育
  18. 我的新书《asp.net开发技巧精讲》
  19. 飞书会议视频会议系统,会议场景全hold住
  20. CCF推荐会议 | 计算机理论:截稿日期纵览(含ESA,CONCUR等)

热门文章

  1. 正几边形可以实现无缝拼接?
  2. Byte数组转换成string 的方法积累
  3. linux内存管理简介,Linux操作系统的内存管理特性简介 (3)
  4. 和vs版本关系_栈局部变量优化探究,意外发现了 vs 的一个 bug ?
  5. maven跳过单元测试-maven.test.skip和skipTests的区别
  6. php配合jade使用,前端自动化系列(四)之jade预编译html
  7. linux centos 分区,linux centos 分区
  8. wamp php文件怎么创建数据库,phpmyadmin怎么创建数据库
  9. linux安装mysql不成功怎么处理_Linux上安装MySQL时出现不兼容的解决办法
  10. SQL语言基础:SQL授权相关知识笔记​