mongo数据库的命令行操作

mongo数据库的命令行操作

简单介绍

非关系型数据库,又叫nosql,缓存型,使用场景多是解决大规模数据集合多重数据种类

mysqlmongoDb
database(库)database(库)
table(表)collection(集合)
row(一条数据)document(文档)
column(字段)field(区域)
二维表,每次存到磁盘json,存在缓存,关闭时存到磁盘

命令行操作

help 查看基本操作命令

db.help() 显示数据库操作命令

库操作

查询:show dbs		//显示数据库列表 
		  db			  //查看当前数据库
创建:use 库名		//没有就创建,有就切换
删除:db.dropDatabase()	//删除当前数据库

集合(表)操作

集合命名注意事项

  1. 集合名不能是空串
  2. 不能含有空字符
  3. 不能以“system.”开头,这是系统集合保留的前缀
  4. 集合名不能含保留字符“$”
创建:db.createCollection("集合名",{配置})
      //配置:{size:文件大小,capped:true,max:条数/文档数}
      //		capped	是否定量、显示创建集合

		 db.集合.insert({})		   //当插入文档的时候,如果集合存在,就会隐式创建集合
查询:show collections				 //不要漏了s!!!查询该数据库的所有表/集合  goods  user
		 db.getCollectionNames()	//[ "goods", "user" ]
删除:db.集合.drop()						//删除集合
重命名:db.集合.renameCollection("集合名")	

文档/数据操作

//插入单条数据
		db.集合.insert({})
		db.集合.insertOne({})
		db.集合.save({})
//插入多条数据
		db.集合.insert([{},{}])
		db.集合.insertMany([{},{}])
		db.集合.save([{},{}])

insert插入相同id的文档会报错

save插入相同文档,会替换掉原文档,相当于修改


//删除第一条文档
		db.集合.deleteOne({条件描述})
		db.集合.remove({条件描述},true)	//默认是false,删除符合条件的所有文档
//删除多条文档
		db.集合.deleteMany({条件描述})		//删除符合条件的所有文档,传入空对象时表示清空集合
		db.集合.remove({条件描述})				//同上

db.集合.update({查询条件,{替换条件},插入boolean,全替换boolean})
//插入boolean: 如果不存在update的记录,是否插入objNew,
							//true为插入,默认是false,不插入
//全替换boolean:默认是false,只更新第一条数据,
								//	true,更新符合条件的全部数据			

查询条件

{age:22} age == 22
{age:{KaTeX parse error: Expected 'EOF', got '}' at position 6: gt:22}̲} age > 22 {a…lt:22}} age < 22
{age:{KaTeX parse error: Expected 'EOF', got '}' at position 7: gte:22}̲} age>=22 {ag…lte:22}} age<=22
{age:{ l t e : 122 , lte:122, lte:122,gte:22}} age<=122 && age>=22
{$or:[{age:22},{age:122}]} 22 or 122
{key:value,key2,value2} value && value2
{name:/正则/}

替换条件

{ s e t : 数 据 , set:{数据}, set:,inc:{age:1}}

db.集合.find({条件})		//查询所有符合条件的文档,为空的时候,表示查询所有
db.集合.findOne()			  //找第一个
db.集合.find().count()	//查询集合的文档条数
db.集合.distinct()			//去重
db.集合.find({条件},{指定要显示的列区域})	//查询后指定格式显示

指定要显示区域

username:1 显示这个区域

username:0 不显示这个区域

_id 默认显示

操作符实例
等于(=)db.集合.find( { price : 24 } )
大于 (>)db.集合.find( { price : { $gt : 24} } )
小于 (<)db.集合.find( { price : { $lt : 24 } } )
大于等于 (>=)db.集合.find( { price : { $gte : 24} } )
小于等于 (<=)db.集合.find( { price : { $lte : 24} } )
不等于 (!=)db.集合.find( { price : { $ne : 24} } )
与 (and)db.集合.find( { price : 24 , name : “aa”} )
或 (or)db.集合.find( { $or : [ { price : 24 } , {name : “aa”} ] } )
排序
db.集合.find().sort(key : 1)	//升序
db.集合.find().sort(key1 : 1 , key2 : -1)	//在key1升序的前提下 降序
跳过
db.集合.find().skip(number)		//跳过
限定
db.集合.find().limit(number)	//查询固定条数

skip(), limit(), sort()三个放在一起执行的时候,执行的顺序是 sort() => skip() => limit()。


以上就是关于mongo数据库使用命令行的简单操作,如有不对,欢迎指出~

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值