mongodb相关操作命令

mongodb相关操作命令集合

liunx下mongodb

 命令相关:  
 状态   service mongodb status  
 启动进入数据库            mongo
 创建数据库                    use test
 查看所有数据库            show dbs
 查看某库下集合            show tables
mongodb-删除相关
    remove()
    参数说明:
    query :(可选)删除的文档的条件。
    justOne : (可选)如果设为 true1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
    writeConcern :(可选)抛出异常的级别。

	db.col.remove({'title':'相关值'})//删除相同titlle得文档
	db.collection_name.remove(DELETION_CRITERIA,1)//删除文档第一条数据
    db.col.remove({})  //删除所有文档
    db.dropDatabase()  //删除数据库
    db.col.drop() // 删除集合
   
插入文档
db.数据库.insert({字段:"值",字段1:"值1"})
document = ({'key'=>'值','key1'=>'值1'})  设置变量
db.mycol.insert(document)//插入

3.2 版本后还有以下几种语法可用于插入文档:
 db.collection.insertOne():向指定集合中插入一条文档数据
 db.collection.insertMany():向指定集合中插入多条文档数据

查看文档
db.mycol.find(document)//查看变量
//查看已插入文档
    db.数据库.find()
    db.数据库.find().pretty()
    db.mycol.find().pretty(by="值")//查询某字段及值类似多条件查询
    db.mycol.find({ titile: {$regex: /^查询得模糊值/ } }) //模糊查询 且 应该可以应用到删除 修改语句当中;

更新文档
    MongoDB 使用 update()save() 方法来更新集合中的文档
    
    语法:db.collection.update()
    参数说明:
	query : update的查询条件,类似sql update查询内where后面的。
	update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
	upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
	multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
	writeConcern :可选,抛出异常的级别。
    
   #Update语法:
   db.col.update({'title':'数据1'},{$set:{'title':'改变title'}})
   
   #Save()
   db.col.save({"_id":'值'})
   
   #更新一条
   db.col.updateOne({"name":"abc"},{$set:{"age":"28"}})   
    
高级复杂查询

   db.col.find().count()  #统计集合条数
   db.col.find({$or:[{"by":"菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()
   db.col.find({$or:[{"by":"菜鸟教程"},{"name": "测试"}]}).pretty().limit().count()//查看 or条件 统计次数
   db.col.find({"likes": {$gt:50}, $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()
   
符号集合:Match  Group Project  Sort
$match: 这个符号用于对数据进行筛选,类似于SQL中的WHERE语句。

	match后面可以跟一个查询条件,只有符合条件的文档才会被保留。
	例如: match后面可以跟一个查询条件,只有符合条件的文档才会被保留。$match: { platform: “android” } 
	$eq:表示等于。
	$ne:表示不等于。
	$gt:表示大于。
	$gte:表示大于等于。
	$lt:表示小于。
	$lte:表示小于等于。
	$in:表示匹配多个值中的任意一个。
	$nin:表示不匹配多个值中的任意一个。
	$and: 逻辑与 (表示多个条件同时满足。)
	$or: 逻辑或 (表示多个条件中满足任意一个即可。)
	$not: 逻辑非
	$regex: 正则表达式

$project: 这个符号用于对文档中的字段进行投影操作,类似于 S Q L 中的 S E L E C T 语句。
类似于SQL中的SELECT语句。可以选择保留或者去除某些字段,也可以添加一些新的计算字段。
例如:project: { platform: 1, 
                version: 1, 
                isNew: { 
                $cond: { 
                if: { gte : [ " gte: [ "gte:["createdAt", ISODate(2022-01-01) ] }, 
                then: true, else: false 
                  } 
                }
               } 
               
	$add:表示加法。
	$subtract:表示减法。
	$multiply:表示乘法。
	$divide:表示除法。
	$mod:表示取模。
	$concat: 连接字符串
	$substr: 截取字符串
	$toUpper: 转换为大写
	$toLower: 转换为小写
	$dateToString: 将日期转换为字符串
	$isArray: 判断是否为数组
	$size: 获取数组长度
	$cond:表示条件语句,根据条件返回不同的结果。
	$ifNull:表示如果字段值为空,则返回指定的默认值。
	$arrayElemAt:表示返回数组中指定索引位置的元素。


$group: 这个符号用于分组聚合操作,类似于SQL中的GROUP BY语句。

例如:group: { _id: “$platform”, 
             count: { $sum: 1 } 
            } 

	$sum:表示求和。
	$avg:表示求平均值。
	$min:表示求最小值。
	$max:表示求最大值。
	$push:表示将字段值添加到一个数组中。
	$addToSet:表示将字段值添加到一个集合中,集合中的元素不重复。
	$first:表示返回分组中第一个文档的指定字段值。
	$last:表示返回分组中最后一个文档的指定字段值。
	$count: 统计数量

$Sort:
1:表示升序。
-1:表示降序。
$asc: 升序排列
$desc: 降序排列

$limit:表示限制查询结果返回的文档数量

$skip:表示跳过指定数量的文档,内部没有其他符号。

$unwind:表示将一个包含数组的字段拆分成多个文档进行操作,
	$path: 拆分数组字段的路径
	$preserveNullAndEmptyArrays: 是否保留空数组或不存在的字段

$lookup:表示在另一个集合中查找符合条件的文档并返回,通常和 $unwind 结合使用。

	$from: 要查询的集合
	$localField: 当前集合中的字段
	$foreignField: 要查询集合中的字段
	$as: 输出结果集中的字段名
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值