mongodb

基本命令

查看当前数据库的基本命令 db
查看所有的数据库 show dbs
查看所有集合 show collections
删除集合 db.集合名称.drop()
切换和常见数据库 use dbname
删除数据库(先切换到要删除的数据库下) db.dropDatabase()
查看数据库信息 db.stats()
创建集合
db.createCollection('集合名称') 不固定大小
固定大小的集合 集合内容存满是,新的数据会覆盖旧的数据
db.createCollection(
'info',
{capped:true, 制定集合的大小(单位是字节)
size:10, 指定集合中能存储的最大文档的数量
max:
})
size的优先级更高

数据的 增 删 改 查

db.1712student
插入数据

插入单条数据
db.集合名称.insert({'key':'value'})

插入多条数据库
db.集合名称.insert(
[
{'key':'value'}
]
)

插入数据时 如果没有指定 _id 会帮你自动生产一个 也可以自己生成一个

更新数据
update
全文档更新 (由一个新的文档替换之前的文档,id不变)

db.集合.update(
{'key':'value'},查询条件
{'newkey':'newvalue'}新的文档
{
upsert:默认情况下为false,要更新的文档不存在,不会插入一条新的文档 }
)

局部更新
db.集合名称.update(
{'key':'value'},查询条件
{ $set:{'newkey':'newvalue'}
}
)

save:会根据_id这个字段起集合下查找,如果_id存在,\全文档更新。 如果不存在,则插入一条新的数据库

db.集合名称.save(
{id:'',
'key':'value',....}
)

格式化输出
db.集合名称.find().pretty()

删除数据
删除多条
db.集合名称.remove(
{'key':'value'}, 条件
1 表示的不是数量,表示的是true和flase
)

查询
db.集合名称.find() 查询所有

db.集合名称.find(
{'key':'value'}, 条件
)

db.集合名称.findOne( 查询第一条
{'key':'value'}, 条件
)

等于,默认是等于判断,没有运算符
小于 lt 小于或等于lte
大于 gt 大于或等于gte
不等于 $ne

db.集合名称.find(
{'time':{$gte:100})
)

多条件查询

db.集合名称.find(
{
'time':{$gte:100},
'actor':{'李连杰'}
}
)

逻辑或 or db.movie.find( {or:
[
{'time':{$gt:100}},
{'actor':'李连杰'}
],)

使用正则查询

db.集合名称.find(
{
'字段':/^正则表达式/
})

db.集合名称.find(
{
'字段':{regex:'正则表达式'} } )type:只返回符合数据类型的文档
db.集合名称.find(
{
'key':{$type:'数据类型'}
}
)

limit:限制返回
db.数据类型.find().limit(数字)
skip:跳过数据
db.xiaoti.find().skip(数字).limit(数字)

注意:limit和skip顺序不分先后

db.集合名称.find().sort({'key':方向(1 or -1),'key2':方向( )})

distinct: 去重

db.集合名称.distinct('')

project(投影):乐意选择查询结果中,数据的展示和隐藏 1是显示 0是隐藏
db.集合名称.find({},{'字段':数字,})
假如再设置要显示的字段时,第一个字段显示为1,值显示这个字段 其他的不显示 只隐藏当前设置的字段,其他的字段都会显示出来

count统计文档的个数
db.集合名称.count(
{条件}
)

db.集合名称.find({条件}).count()

mongodb操作中的聚合,主要是处理数据(求和,求整)

MongoDB数据导入与导出


d :数据库名
c :collection名
o :输出的文件名
-type : 输出的格式,默认为json
f :输出的字段,如果-type为csv,则需要加上-f "字段名"

导出json 将mongo数据库导入在文件 .json 结尾的文件

mongoexport -d XXX(库名字) -c XXX(集合名字) -o '路径(将文件直接拉入终端)' --type json
mongoexport -d xxx -c xxx -o '路径' --type json

导出csv

mongoexport -d class1804 -c books -o ~/桌面/dump/books.csv --type csv -f 'by_user,likes'

https://www.cnblogs.com/TankMa/archive/2011/06/08/2074947.html

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 28,427评论 2 85
  • 一、MongoDB简介 1.概述 ​ MongoDB是一个基于分布式文件存储的数据库,由C++语言编写。旨在为WE...
    郑元吉阅读 655评论 0 2
  • db的帮助文档 输入:db.help(); db.AddUser(username,password[, read...
    一秆子数码阅读 1,320评论 0 0
  • 简介 MongoDB 是一个基于分布式文件存储的NoSQL数据库 由C++语言编写,运行稳定,性能高 旨在为 WE...
    大熊_7d48阅读 19,959评论 1 8
  • 这世界上唯一严肃的事,就是自杀。有位博友留很多的言,称生活遭遇了莫大的不幸,想要结束生命。看得出来他信任了我,真名...
    SpeakBACH问酒世仓阅读 153评论 0 1
  • 我想找一个地方,建一座房子 东边最好有山,南边最好有水 北边,应该有可以耕种的几亩地 至于西边,必须有一条高速公路...
    怪阿楠阅读 466评论 0 0
  • 2018。 冬天还很漫长,身边的家人,朋友都在健健康康的享受这寒冬,又在期盼着春暖花开。 希望过马路会减慢速度让行...
    毛雨欣M阅读 112评论 0 2