mongoose的操作及其常用命令


一,局部安裝mongoose

npm install mongoose -S

二、mongoose常用命令:

//引入mongoose模塊:
const mongoose = require('mongoose');

//連接數據庫:
mongoose.connect('mongodb://127.0.0.1:27017/kinoko',(err)=>{
    if(err){
        console.log('連接失敗')
    }else{
        console.log('連接成功')
    }

    //創建表以及字段類型:
    //創建表user
    const User = mongoose.model('user',{
        //規定user表中的字段類型:
        name:String,
        age:Number
    })

    //增:
    const user = new User({
        name : '阿古',
        age:19
    })

    const user1 = new User({
        name : '美麗',
        age:22
    })

    const user2 = new User({
        name : '笑笑',
        age:21
    })

    const user3 = new User({
        name : '劉梅',
        age:56
    })

   console.log(user.save())  //輸出:Promise{<pending>}
   user.save().then((result)=>{
       console.log('成功的回調')
   },()=>{
       console.log('失敗的回調')
   })

   user1.save().then((result)=>{
    console.log('成功的回調')
    },()=>{
        console.log('失敗的回調')
    })

    user2.save().then((result)=>{
        console.log('成功的回調')
    },()=>{
        console.log('失敗的回調')
    })

    user3.save().then((result)=>{
        console.log('成功的回調')
    },()=>{
        console.log('失敗的回調')
    })

//刪:
//刪除指定對象:
User.remove({name:'美麗'}).then((result)=>{ //result:是一個對象 返回值是受影響條數
    console.log(result)
})

//刪除所有數據:
User.remove({}).then((result)=>{
    console.log(result)
})

//刪除指定ID
User.findByIdAndRemove("5c8263170998c51d58e14044").then((result)=>{   //5c8263170998c51d58e14044 ID值
    console.log(result);
})

//改:
User.update({name:'阿古'},{$set:{name:"lily"}},{multi:true}).then((result)=>{
    console.log(result);    //multi:true  表示修改多條數據
})

User.findByIdAndUpdate("5c8263170998c51d58e14046",{$set:{name:'rose'}},{multi:true}).then((result)=>{
    console.log(result);
})

//查找符合條件的所有數據:
User.find({name:'lily'}).then((result)=>{
    console.log(result);
})

// //查詢所有數據:
User.find().then((result)=>{
    console.log(result);
})

//查詢單條數據:
User.findOne({name:'lily'}).then((result)=>{
    console.log(result);
})

//條件查詢:$lt(小於)  $lte(小於等於)   $gt(大於)  $gte(大於等於)   $ne(不等於)
User.find({'age':{'$lt':20}}).then((result)=>{
    console.log(result);
})

User.find({'age':{'$lte':20}}).then((result)=>{
    console.log(result);
})

User.find({'age':{'$gt':20}}).then((result)=>{
    console.log(result);
})

User.find({'age':{'$gte':20}}).then((result)=>{
    console.log(result);
})

User.find({'age':{'$ne':20}}).then((result)=>{
    console.log(result);
})

//$in(包含等於)       $nin(不包含 不等於)
User.find({'age':{'$in':[18,19]}}).then((result)=>{
       console.log(result)
    })

    User.find({'age':{'$nin':[18,19]}}).then((result)=>{
        console.log(result)
     })
 
    $exists(判斷當前關鍵字是否存在)
    User.find({sex:{'$exists':true}}).then((result)=>{
        console.log(result);
    })

//查詢指定列  如果不想要ID值  只需要設置ID = 0;
User.find({},{name:1,_id:0}).then((result)=>{
    console.log(result);
})

//'$or'或
User.find({'$or':[{name:'lily'},{age:19}]}).then((result)=>{
    console.log(result);
})

//$exists(判斷當前關鍵字是否存在)
User.find({name:{'$exists':'true'}}).then((result)=>{
    console.log(result)
})

//升序降序
User.find().sort({age:1}).then((result)=>{
    console.log(result)
})

User.find().sort({age:-1}).then((result)=>{
    console.log(result)
})


//模糊查詢:
User.find({name:/l/}).then((result)=>{
    console.log(result)
})

User.find({name:/^l/}).then((result)=>{   //以l開頭
    console.log(result)
})

User.find({name:/l$/}).then((result)=>{   //以l結尾
    console.log(result)
})

//skip()查詢n條以后的數據
User.find().skip(1).then((result)=>{
    console.log(result)
})

//顯示n到m之間的數據 skip跳過多少條,limit顯示m-n條
User.find().skip(1).limit(3).then((result)=>{
    console.log(result);
})
})

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM