一、插入语句
1、insert 通过insert语句在集合(相当于mySQL的表)中插入一个文档
db.users.insert({name:'zhangsan', age: 18, gender: '男'})
2、insertOne
db.users.insertOne({name:'zhangsan', age: 18, gender: '男'})
3、一次性插入多行数据
db.users.insert(
[{name:'lisi',age:20,gender:'男'},{name:'wangwu',age:21,gender:'女'}]
)
4、还可以使用
db.users.insertMany(
[{name:'lisi',age:20,gender:'男'},{name:'wangwu',age:21,gender:'女'}]
)
5、使用save
db.users.save({name:'zhaoliu', age: 31, gender: '男'})
二、更新修改语句
- 改变符合条件的第一条数据,修改一条
update(第一个参数表示条件,第二个参数修改内容)
db.users.update(
{age: 18},
{
$set: {
name: 'niuqi'
}
}
)
- 改变符合条件的所有条数据,修改所有匹配条件的文档
updateMany(第一个参数表示条件,第二个参数修改内容)
db.users.updateMany(
{age: 18},
{
$set: {
gender: '女'
}
}
)
三、删除语句
- 删除一个
db.users.deleteOne(
{name: 'zhangsan'}
)
- 删除多个
db.users.deleteMany(
{gender: '女'}
)
- 全部删除(清空集合)
db.users.remove({})
四、查询语句
- db.movie.find()默认查询所有集合中数据
db.movie.find()
- 带过滤条件查询
db.movie.find(
{year: '1994'},
{title: 1, year: 1}
)
db.movie.find(
{year: '1994'},
{title: 1, year: 1, _id: 0}
)
title: 1中的1代表存在,不代表数字, 0代表不显示,1和0都不带引号~~~
find()里第一个{}里面是查询条件,第二个{}里面是控制显示条件(用0和1选择控制)
- size() 返回多少条数据
db.movie.find(
{},
{title: 1, year: 1, _id: 0, 'rating.average': 1}
).size()
- skip(3) 跳过前3条数据
db.movie.find(
{},
{title: 1, year: 1, _id: 0, 'rating.average': 1}
).skip(3)
- .limit(5) 截止到倒数第5条数据
db.movie.find(
{},
{title: 1, year: 1, _id: 0, 'rating.average': 1}
).limit(5)
小提示: skip可以和limit合起来用,截取中间任意一段数据,可以用来做分页
db.movie.find(
{},
{title: 1, year: 1, _id: 0, 'rating.average': 1}
).skip(3).limit(5)
6.sort()排序
db.movie.find(
{},
{title: 1, year: 1, _id: 0, 'rating.average': 1}
).sort(
{'rating.average': 1}
)
这里面的1代表升序, -1代表降序排列
提示:skip,limit,sort三种可以一起用,而且没有顺序,都是先排序。
五、常见的集合数据查询
query1.pngquery2.png
query3.png
网友评论