下载 mongDB & pyMongo
pyMongo: https://pypi.python.org/pypi/pymongo/#downloads
mongoDB: https://www.mongodb.com/download-center#community
文档参考: http://www.runoob.com/mongodb/
运行mongoDB
此处使用的是Window 32bit版本
mongod.exe --dbpath .\database --storageEngine=mmapv1
pyMongo 范例代码
#-*- coding: utf-8 -*-
import pymongo
class myMongo():
def __init__(self):
client = pymongo.MongoClient("localhost", 27017)
self.db = client.test
# self.db.authenticate("user","password") # 用户认证
print self.db.name
# 添加数据
def insert(self, data):
posts = self.db.posts
posts.insert(data)
# 删除数据
def remove(self, conf=None):
posts = self.db.posts
if conf == None:
posts.remove()
else:
posts.remove(conf)
# 更新数据
def update(self, conf, data):
posts = self.db.posts
posts.update(conf,{"$set": data})
# 查询数据
def find(self, conf=None):
posts = self.db.posts
data = None
if conf == None:
data = posts.find()
else:
data = posts.find(conf)
return data
db = myMongo()
db.insert({"x": 10, "y": 100})
db.insert({"x": 15, "y": 100})
db.insert({"x": 20, "y": 100})
# x小于16
for item in db.find({"x": {"$lt": 16}}):
print item
# x等于10
for item in db.find({"x": 10}):
print item
条件查询
操作 | 格式 | 范例 | SQL |
---|---|---|---|
等于 | {<key>:<value> } | posts.find({"x": 15}) | where x = 15 |
小于 | {<key>:{"$lt": <value>}} | posts.find({"x":{"$lt": 15}}) | where x < 15 |
小于或等于 | {<key>:{"$lte": <value>}} | posts.find({"x":{"$lte": 15}}) | where x <= 15 |
大于 | {<key>:{"$gt": <value>}} | posts.find({"x":{"$gt": 15}}) | where x > 15 |
大于或等于 | {<key>:{"$gte": <value>}} | posts.find({"x":{"$gte": 15}}) | where x >= 15 |
不等于 | {<key>:{"$ne": <value>}} | posts.find({"x":{"$ne": 15}}) | where x != 15 |
操作 | 格式 | 范例 | SQL |
---|---|---|---|
AND | |||
OR |