MongoDB存储

mongo DB
#定义数据库,文件为config.py
mongo_url='loclhost'//数据库地址
mongo_DB='DB_name'//数据库名称
mongo_TABEL='tabel'//表名

#引用数据库
from config import *
import pymongo

client=pymongo.MongoClient(mongo_url)//链接到mongo
db=client[mongo_DB]//实例化mongo_DB数据库
#插入数据
db[mongo_TABEL].insert({"key":"value"})

 show dbs //查看数据库

use database //选择数据库

查询:

  clear-windows = cls清屏

  ##user==集合名##

查询集合名: 

  show collections

参考链接

  db.user.find() //查看所有数据内容

  db.user.find().limit(4) //查询出的结果只显示4条

  db.user.find().limit(4).skip(4) //查询出的结果只显示4条后的又4条

 

  db.user.find({"age":3}) //单条件查询

  db.user.find({"age":3,"name":"zhag"}) //逻辑查询and

  db.user.find({$or:[{"name":"zhang"},{"age":"3"}]}) //逻辑查询or

  db.user.find({"age":{$gt:995}}) //$gt表示查找age的值是大于995的过滤项【大于】

  db.user.find({"age":{$lt:5}}) //$LT表示查找age的值是小于5的过滤项【小于】

  db.user.find({"age":{$lt:5,$gt:995}) //$LT表示查找age的值是小于5的过滤项【小于5并且大于995】的项目

 排序查询:

  db.user.find({"age":{$lt:11}}).sort({"age":1})

  ●find(查询条件)

  ●sort({"age":1})  1是升序  -1是降序

  db.user.find({"age":{$lt:11}}).sort({"age":1},{"name":1})

  ●sort({"age":1},{"name":1}) 优先以age升序排序 ,如果遇到两个或者多个一样的age,就以name排序

插入:

db.user.insert({"name":"zhang"}) //单条件查询

导入文件:

  Mongoimport --db [database_name] --collection [user] --drpo --file [path]

  ●database_name 数据库名

  ●user 集合名

  ●path 导入的文件路径,可以无后缀名,但是必须是字典格式,可以是json文件

 

修改:

方法1:

db.user.update(

  {k:v}, //查找条件

  {$set:{k2:v2,k3:v3}} //查找到的项目把它的k2改成v2新的值,k3如果没有就增加

  {multi:true} //参数表示如果匹配到,替换全部匹配到的结果,否则只替换一个,后面的不再继续

)

方法2:

db.user.update( {k:v},{k2:v2,k3:v3},{multi:true} )

 

删除:

删数据:

  db.user.remove({}) //清空整个集合

  db.user.remove({"name":"zhang"}) //符合条件的全部删除

  db.user.remove({"name":"zhang"},{justone:true}) //符合条件的只删除第1条

删集合:

  db.user.drop()

删库:

  先选中这个库 :use 库名

  db.dropDtabase()

 

读取MongoDB

import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["XP_item"]
mycol = mydb["dict_data"]

for x in mycol.find():
    print(x)

 

posted @ 2018-10-19 12:01  zhangdingqu  阅读(398)  评论(0编辑  收藏  举报