mongo数据库操作

启动mongo服务

  • 进入mongo下的bin目录,执行命令
  • ./mongod --config mongodb.conf

连接数据代码

from pymongo import MongoClient

mongo_host = ""
mongo_port = 27017
mongo_user = ""
mongo_passwd = ""
auth_db = db_name = "online_data"    #库名
coll = 'message_test'  #表名

mc = MongoClient(mongo_host, mongo_port)
mc[auth_db].authenticate(mongo_user, mongo_passwd)

_mdb = mc[db_name]
mongo_query = _mdb[coll]
import pymongo
# client = pymongo.MongoClient(host='127.0.0.1', port=22771)
db = client.data_1
db.authenticate('mongo_user','mongo_passwd')
p = db.shuju
pp2 = db.shuju2

正则匹配非空字符串

{“data.name”: {"$regex" : “\S”}}

在linux服务器上打开mongo客户端

若mongo的安装目录尚未添加到环境变量,则需要先进入安装目录后,再进行连接。

  • mongo host:port/database -u user -p password

  • Linux开启服务
    命令:sudo service mongod start

  • 客户端连接
    命令: mongo

插入数据

db.table(表名).insert({'name':'aaaaaaaa'})

查询

db.table(表名).find({'name':'aaaaaaaa'})
db.table(表名).find({'age':{$gt:18}})
# 时间倒序查询
db.daytable.find().limit(100).sort({'insert_time':-1})

更新数据和删除数据代码

import pymongo
client = pymongo.MongoClient(host='127.0.0.1', port=27017)
db = client.t_test
coll = db.shuju
# 更新数据
# multi: 布尔类型, 设置数据更新时是否一次性更新多条数据, 默认为False
# upsert: 设置数据更新时,如果数据不存在,是否将本次数据添加到文件中,默认为False
# 已经存在的字段更新,不存在的添加,无法删除字段
coll.update({'name':'jiesen1'},{'$set':{'age':20,'sex':'woman'}},multi=True,upsert=True)
# 删除数据
coll.delete_one({"name": "jiesen1"})
# 根据 时间字段 删除
coll.remove({"insert_time":{"$lt": time.time()-300}})
# 查找数据
db.things.find({"createTime":{"$gt":"2015-5-21 0:0:0"}}) // 大于某个时间
db.things.find({"createTime":{"$lt":"2014-5-21 0:0:0"}}) // 小于某个时间
db.things.find({"$and":[{"createTime":{"$gt":"2015-5-21 0:0:0"}},{"createTime":{"$lt":"2015-5-22 0:0:0"}}]}) // 某个时间段
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值