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

本文实例讲述了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程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值