1.查看当前数据库:show dbs
2.创建一个数据库(MongoDB的库是隐式库)
第一种方法
use 空白数据库名(数据库中没有使用过的名称)
db.createCollection('集合名')
第二种方法
use 空白数据库名(数据库中没有使用过的名称)
db.集合名(不需要提前创建).insert([{数据},{数据},{数据}…])
使用这种方法创建成功了,让我们用可视化工具看一下效果
3.如何删除数据库
删除集合:db.集合名.drop()
删除库:db.dropDatabase()
CRUD命令
增操作
insert方法
插入单条数据:db.集合名.insert({数据})
插入多条数据要使用 [ ] 来表示:db.集合名.insert([{数据},{数据},{数据}])
查询操作:db.集合名.find(查询表达式,查询的列)
查询表达式:Select查询的列 | From 表 | Where 查询的条件
查询列:{列名:1 ,列名:2} 其中0代表不显示,1代表显示
查询表达式:
1.等于{key:value}
2.不等于{key:{$ne:value}}
3.大于{key:{$gt:value}}
4.小于{key:{$lt:value}}
5.小于等于{key:{$lte:value}}
6.大于等于{key:{$gte:value}}
7.不在多个值(数组)中查询{key:{$nin:value}}
8.指定所有
9.查询含有字段的文档{key:{$exits:0/1}}
10.所查询的字段在数组中才显示{key:{$in:[’’,’’,’’]}}
11.显示所有的条件都不满足 $nor
12.显示所有的条件都满足 $and
13,条件中只有满足一个就显示 $or
删除:remove
db.集合名.remove({条件表达式},{选项})
注意事项:
1.选项中标明justOne:true代表删除查询到的数据中的一条
而justOne:true代表删除查询到的数据中的全部
2.如果不写查询表达式,则集合中的所以文档将被删除
更新update
db.集合名.update(查询表达式,新值,选项)
查询表达式--------修改谁?
新值(赋值表达式)-----------修改成什么样
选项 ------------可选参数
修改时的赋值表达式:
1.
s
e
t
:
修
改
某
列
的
值
2.
set:修改某列的值 2.
set:修改某列的值2.unset:删除某个列
3.
r
e
n
a
m
e
:
重
命
名
某
个
列
4.
rename:重命名某个列 4.
rename:重命名某个列4.inc:增长某个列
如果我们不使用赋值表达式,则我们的操作就不是修改而是覆盖了
查询条件表示多个的时候,更新操作如果是修改某列的名称,或者删除列,需要配合“选项”multi:true才能完成,multi默认为false
聚合
db.col.aggregate()
管道操作符:
$group:分组
$match:过滤(一般配合查询表达式)
$limit:用来限制MongoDB聚合管道返回的文档数。
$skip:在聚合管道中跳过指定数量的文档,并返回余下的文档。
$sort:将输入文档排序后输出
$project:修改输入文档的结构。可以用来重命名、增加或删除域,也可以用于创建计算结果以及嵌套文档。
group中的一些操作表达式
$sum:计算总和。
$avg:计算平均值
$min:获取集合中所有文档对应值得最小值。
$max:获取集合中所有文档对应值得最大值。
$first:根据资源文档的排序获取第一个文档数据。
$last:根据资源文档的排序获取最后一个文档数据
案例:
查询list数据库的goods集合下cat_id栏目下的商品数量
2.查询goods下有多少条商品
3.查询每个栏目下价格大于50元的商品个数