MongoDB基础用法

MongoDB基础用法

基本语法:

use DATABASE_NAME #创建数据库

db.dropDatabase() #删除数据库

db.createCollection(name, options) #创建集合

db.collection.drop() #删除集合

db.COLLECTION_NAME.insert(document) #插入文档

#更新文档:
db.collection.update(
{
upsert: ,
multi: ,
writeConcern:
}
)

db.col.update({‘title’:‘MongoDB 教程’},{$set:{‘title’:‘MongoDB’}}) #更新标题

#删除文档:
db.collection.remove(
{
justOne: ,
writeConcern:
}
)

#删除 status 等于 A 的全部文档:
db.inventory.deleteMany({ status : “A” })

#查询数据
db.collection.find(query, projection)
db.col.find().pretty()

#条件操作符:
$gt -------- greater than >

$gte --------- gt equal >=

$lt -------- less than <

KaTeX parse error: Expected '}', got 'EOF' at end of input: …find({likes : {lte : 150}})

$ne ----------- not equal !=

$eq -------- equal =

db.col.remove({}) #清空集合“col”数据

db.COLLECTION_NAME.find().limit(NUMBER) #limit()方法

db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER) #skip() 方法

db.COLLECTION_NAME.find().sort({KEY:1}) #sort排序

db.collection.createIndex(keys, options) #索引

db.col.getIndexes() #查看集合索引

db.col.totalIndexSize() #查看集合索引大小

db.col.dropIndexes() #删除集合所有索引

db.col.dropIndex(“索引名称”) 删除集合指定索引

db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION) #聚合

1.基本命令
show dbs //查看数据库
use dbname //切换到数据库
db.createCollection(‘collection’) //创建数据表
db.collection.drop() //删除数据表
db.dropDatabase() //删数据库
db.collection.insert({data}) //插入数据
db.collection.find() //显示数据表内全部内容

2.查询体
{key.attr.attr:value} //普通式
{key:{$ne|$gt|$gte|$lt|$lte|$in|$nin|$all:value}} //key满足 $oper value的值
{$or|$and|$not|$nor:[{key1:{$gt:value}},{key2:{$ne:value}}]} //用$oper同时限定key1,key2的条件
{key:{$mod{8,2}}} //取出key对8取余为2的值。
{key:{$exist:1}} //取出key列存在的值。
{key:{$type:String|Double|Array|Date|Object|Boolean|…}}//查询key类型为type的列
{key:{$regex:/pattern/}} //通过正则查询,效率较低
{$where:‘this.attr.express…’} //直接用where语句,二进制转为JS运算,较慢

3.find()方法增强
db.collection.find(query,{要取出的列:1,不需要的列:0})
db.collection.find(query).skip(跳过的行数).limit(限制信息条数);
db.collection.find(query).explain() //与MYSQL的解释语句一样。
db.collection.remove(query,[justone]) //如不指定query,全部删除;[justone]默认为false意思是查询到多个,但只删一个。

4.update语句
db.collection.update(query,{key:newvalue}) //注意:新值会覆盖旧值,即数据只剩下语句中定义的key
db.collection.update(query,
{ $set:{key:newvalue}, $unset:{key:value}, $rename:{key:value}, $inc:{key:value},

},
{
multi:true, //改变所有符合条件的,默认为false
upsert:true //没有的话刚添加,默认为false}
)

5.游标
var cursorName=db.collection.fund(query,…)[.skip(num).limit(num)] //创建游标
cursorName.hasNext() //判断是否有下一个
printjson(cursorName.next()) //输出游标的下一个指向值
cursorName.forEach(function(Obj){process Obj}) //遍历操作游标

6.索引
db.collection.getIndexes() //查看索引
db.collection.ensureIndex({key:1/-1[,key.attr:1/-1]},{unique:1(是否唯一)},{sparse:1(是否非空)})// 添加正序/倒序索引
db.collection.dropIndex({key:1/2}) //删除索引
db.collection.reIndex() //重建用了很多出现杂乱的索引

7.MapReduce
db.runCommand(
{
mapReduce: collection, //要操作的数据表
map: function(){emit(key1,key2)}, //对key1和key2进行数据映射
reduce: function(key,value){}, //对key值和数据组value进行操作
out: ,
query: ,
sort: , limit: ,
finalize: ,
scope: ,
jsMode: ,
verbose:
}
)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值