增加数据
基础语法
db.集合名.insert(JSON数据)
集合存在则直接插入数据,集合不存在就隐式创建集合后插入
练习:在test2数据库的c1集合中插入数据(姓名叫czy,年龄18岁)
use test2
db.c1.insert({uname:"czy",age:18})
重点:
- 数据库和集合不存在都隐式创建
- 对象的键统一不加引号方便查看,但是查看集合数据时系统会自动加
- mongodb会根据时间戳生成一个唯一的_id
上图用到了查看集合数据的find命令
db.集合名.find()
升级语法
一次性插入多条数据
mongodb底层使用JS引擎实现,所以支持部分js语法,所以可以通过for循环快速插入多条数据
for(var i=1;i<=10;i++){
db.c2.insert({uname:"a"+1,age:i})
}
查询数据
基础语法
db.集合名.find(条件 [,查询的列])
条件
查询所有数据 {}或者不写
查询age=6的数据 {age:6}
既要age=6又要性别=男 {age:6,sex:‘男’}
查询的列(可选参数)
查询所有字段 不写
{age:1} 只显示age列
{age:0} 除了age列都显示
升级语法
db.集合名.find({
键:{运算符:值}
})
运算符 | 作用 |
---|---|
$gt | 大于 |
$gte | 大于等于 |
$lt | 小于 |
$lte | 小于等于 |
$ne | 不等于 |
$in | in |
$nin | not in |
修改数据
基础语法
db.集合名.update(条件,新数据 [,是否新增,是否修改多条])
是否新增:指条件匹配不到数据则插入(true是插入,false不插入)
是否修改多条:指将匹配成功的数据都修改(true是,false否默认)
升级语法
db.集合名.update(条件,{修改器:{键:值}})(注:可写多个修改器)
修改器 | 作用 |
---|---|
$inc | 递增 |
$rename | 重命名列 |
$set | 修改列值 |
$unset | 删除列 |
数据删除
基础语法
db.集合名.remove(条件 [,是否删除一条])
是否删除一条 true是,false否默认