查询
//查
app.get("/search",function (req,res) {
//1,普通查询
manModel.find().then(function (data) {
console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 2,设置查询条件
manModel.find({age:40,name:"李青"}).then(function (data) {
console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 3,模糊查询
manModel.find({name:/王/}).then(function (data) {
console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 4,设置查询条件 大于$gt 小于$lt 大于等于$gte 小于等于$lte 不等于$ne
manModel.find({age:{$ne:40}}).then(function (data) {
// console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 5,查询某个范围的值 $in $nin 查询年龄等于50和40的人
manModel.find({age:{$in:[50,40]}}).then(function (data) {
// console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 6,排序 sort sort({"age":1})---按照age字段升序 ,-1表示降序,_id字段包含了时间信息
manModel.find().sort({"_id":-1}).then(function (data) {
// console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 7,skip(),跳过的数量;limit()限定查询到的数量
manModel.find().skip(8).limit(3).then(function (data) {
// console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
// 8,或条件 {$or:[]}
// 40~80(包括80,不包括40) find({$or:[{$gt:40},{$lte:80}]})
manModel.find({$or:[{age:50},{age:{$lte:30}}]}).then(function (data) {
// console.log(data)
res.send(data)
}).catch(function (err) {
console.log(err)
})
})
//更新 update
app.get("/update",function (req,res) {
manModel.update({_id:"60346534c1dfd424f43802c2"},{
name:"敏敏123"
}).then(function (data) {
// console.log(data) //{ n: 1, nModified: 1, ok: 1 }
if(data.nModified!=0){
console.log("更新成功!!")
res.send("更新成功!!")
}else{
console.log("请求处理完成,但是无更新的数据")
}
},function (err) {
console.log(err)
})
})
//删除 remove
app.get("/remove",function (req,res) {
manModel.remove({_id:"603466624c6fec1174325281"}).then(function (data){
console.log(data)
if(data.deletedCount!=0){
console.log("删除成功")
res.send("删除成功!!!")
}else{
res.send("没有要删除的数据")
}
},function (err) {
console.log(err)
})
})
1,创建表结构对象:
var mongoose = require('mongoose'); //1引入mongoose模块
var mySchema = mongoose.Schema; //调用Schema方法,创建表结构对象
var add = new mySchema({ //实例化具体的数据结构
'name':String, //设置数据名称和类型
'age':Number
},{ timestamps:true })
var addModel = mongoose.model('addModel',add); //建立数据模型
module.exports = addModel;
2,增加数据
new addModel({
name:req.body.name,
age:req.body.age,
}).save().then(function (data) {
if(data){
console.log('存储成功');
}
})
3,删
addModel.remove({_id:idx}).then(function (data) { console.log(data) })
//{ n: 1, ok: 1, deletedCount: 1 } 代表成功删除 { n: 0, ok: 1, deletedCount: 0 }删除失败
4,批量删除
addModel.deletemany([{_id:idx},{_id:idx},{_id:idx}]).then(function (data) { console.log(data) })
5,查
查询全部
addModel.find().then()
设置条件
addModel.find({name:"小明",age:20}).then()
模糊查询
addModel.find({name:/明/}).then()
设置模糊查询关键字 --- 变量str
addModel.find({name:{$regex:str}}).then()
大于等于:$gte 大于:$gt 小于:$lt 小于等于:$lte 不等于:$ne
addModel.find({age:{$gte:30}}).then()
等于范围中的值:$in 不等于范围中的值:$nin
addModel.find({age: {$in:[20, 100]}}).then()
排序:sort -1从大到小(降序),1从小到大(升序), _id自带时间,可以排序
addModel.find().sort({"_id":-1}).then()
跳过指定数量 查询指定数量 skip limit
addModel.find().sort({"age":-1}).skip(2).limit(3).then()
6,改
addModel.update({_id:"60325fcbec36f825f40b4120"},{
name:"新数据"
}).then(function (result) {
console.log(result)
if(result.nModified!=0){
//成功
}else{
//失败
})
}