一、 插入(增加)数据 (注意标点符号)
db.user.insert({"name":"zhangshan"})
二、 查找数据
1、查询所有记录
格式 db.表(集合名称).find();
db.user.find()
相当于:select* from user
2.查询去掉后的当前聚集集合中的某列的重复数据
db.user.distinct("name")
相当于:select distict name from user
3.条件查询
格式: db.表(集合).find({},{},...)
db.user.find({"age":20}) (一定要注意符合,输入错误查询不到结果)
相当于:select * from user where age = 20
大于($gt)
db.user.find({age:{$gt:20}})
相当于:select * from user where age > 20
小于($lt)
db.user.find({age:{$lt:27}})
相当于:select * from user where age < 27
大于等于($gte)
db.user.find({age:{$gte:27}})
相当于:select * from user where age > = 27
小于等于($lte)
db.user.find({age:{$lte:27}})
相当于:select * from user where age <= 27
并且 ({字段名: {$gte: 值, $lte: 值}})
db.user.find({age:{$gte:20,$lte:28}})
相当于:select * from user where age >= 20 and age <= 28
与 or ($or:[{字段名:值},{字段名:值}])
db.user.find({$or:[{age:27},{age:28}]})
相当于:select * from user where age = 27 or age = 28
搜索查询 模糊查询
格式:db.表(集合).find({字段:/查询的内容/})
db.user.find({name:/zh/})
相当于:select * from user where name like '%zh%'
查询以某个开头
db.user.find({name:/^zhao/})
相当于:select * from user where name like 'zhao%'
查询指定列
db.user.find({}, {字段: 值, 字段: 值})
当然 name 也可以用 true 或 false,当用 ture 的情况下河 name:1 效果一样,如果用 false 就 是排除 name,显示 name 以外的列信息
相当于:select name, age from user
1 升序 -1 降序
升序:db.user.find().sort({age: 1})
降序:db.user.find().sort({age: -1})
查询前 几 条数据
db.user.find().limit(值);
相当于:selecttop 5 * from userInfo
查询 多少条以后的数据
db.userInfo.find().skip(2);
相当于:select * from userInfo where id not in ( selecttop 2 * from userInfo )
查询总条数
db.user.find().count()
相当于:select count(*) from user
查询在 多少-多少之间的数据 用于分页
格式:db.表(集合名).find().limit(值).skip(值)
可用于分页,limit 是 pageSize,skip 是第几页*pageSize
db.user.find().limit(2).skip(0)
findOne 查询第一条数据
db.user.findOne()
相当于:selecttop 1 * from userInfo;
查询某个结果集的记录条数 统计数量
db.userInfo.find({age: {$gte: 27}}).count();
相当于:select count(*) from userInfo where age >= 25;
三、修改数据 update
格式:db.表(集合).update({"字段":"值"},{$set:{“字段”:新值}})
db.user.update({"name":"lisi222"},{$set:{"name":"lisi"}})
相当于:update users set name = ‘lisi’ where name = ‘lisi222’;
删除数据 remove 如果有多条相同的只想删除一条的话 加上 { justOne: true }
db.user.remove({"name":"xiaoming2222"}), { justOne: true }
db.表(集合名).remove( { "字段": "值" } )