连接mongo
# _*_ encoding:utf-8 _*_
__author__ = 'lizhe'
__time__ = '2018/04/22 19:24'
import pymongo
#连接mongo
client = pymongo.MongoClient("localhost",27017)
ceshi = client.ceshi
test_table =ceshi.test_table
插入数据
#插入数据
test_table.insert_one({"name":"小李1","age":"18"})
user =[{"name":"小李2","age":"19"},{"name":"小李3","age":"20"}]
test_table.insert(user)
user1 ={"name":"小李4","age":"18"}
test_table.save(user1)#只能插入字典,不能插入字典的列表如user
查询数据
#查询数据
#查出全部
for user in test_table.find():
pass
print user["name"]
# 结果:小李1
# 小李2
# 小李3
# 小李4
#给定条件
age = test_table.find_one({"name":"小李4"})["age"]
print age
# 结果:18
for user in test_table.find({"age":"18"}):
pass
print user["name"]
# 结果:小李1
# 小李4
#大于$gt,小于$lt,大于等于$gte,小于等于$lte : g(grater),l(low),e(equal),t(than)
for user in test_table.find({"age":{"$gt":"18"}}):
pass
print user["name"]
# 结果:小李2
# 小李3
in
#in
for user in test_table.find({"age":{"$in":("18","19")}}):
pass
print user["name"]
# 结果:小李1
# 小李2
# 小李4
limit,skip
for user in test_table.find().limit(1).skip(2):#limit显示个数,skip跳过个数
pass
print repr(user).decode("unicode–escape")
#结果:(跳过小李1,小李2)
#{u'age': u'20', u'_id': ObjectId('5adc938d6b5e6113d0c7e96a'), u'name': u'小李3'}
or
#or
for user in test_table.find({"$or":[{"age":"19"},{"age":"20"}]}):
pass
print user["name"]
# 结果:小李2
# 小李3
删除
#删除
test_table.remove({"name":"小李1"})
test_table.remove()#删除全部
id = test_table.find_one({"age":"18"})["_id"]#删除第一个age:18的值
test_table.remove(id)
更新
#更新
test_table.update({"age":"18"},{'$set':{"age":99}})#更新第一个满足条件的
排序
for user in test_table.find().sort([("age",1)]):
pass
print repr(user).decode("unicode–escape")
#结果:
#{u'age': u'18', u'_id': ObjectId('5adc92b56b5e613ff8b6b626'), u'name': u'小李1'}
#{u'age': u'18', u'_id': ObjectId('5adc92b56b5e613ff8b6b629'), u'name': u'小李4'}
#{u'age': u'19', u'_id': ObjectId('5adc92b56b5e613ff8b6b627'), u'name': u'小李2'}
#{u'age': u'20', u'_id': ObjectId('5adc92b56b5e613ff8b6b628'), u'name': u'小李3'}