npm i mongodb
连接数据库
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/';
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
db.close();
}
)
插入数据
插入多条数据
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/';
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
var dbo = db.db('my');//连接 my 数据库
const myobj = [{name:'cxk',like:['唱,跳,rap,打篮球']}, {name:'wxy',like:'踩缝纫机'}]; dbo.collection("stus").insertMany(myobj,function(err,res){//连接stus集合并插入多条数据 if(err) {throw err};
console.log("文档输入成功 插入文档数为",res.insertedCount);
console.log(res);
db.close();
}
)
}
)
插入一条数据
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/';
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
var dbo = db.db('my');//连接 my 数据库
const myobj = {name:'cxk',like:['唱,跳,rap,篮球']};
dbo.collection("stus").insertOne(myobj,function(err,res){//连接stus集合并插入一条数据
if(err) {throw err};
console.log("文档输入成功");
db.close();
})})
查询数据
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/'
;MongoClient.connect(url,function(err,db){
if(err) {throw err};
var dbo = db.db('my');//连接 my 数据库
const whereStr = {"name":'cxk'}
const whereStr2 = {"name":{ $in:['cxk','wyf'] }} dbo.collection("stus").find(whereStr2).toArray(function(err,res){
if(err) {throw err};
console.log(res);
db.close();
})})
查询集合所有数据
查询数据const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/';
MongoClient.connect(url,function(err,db){
var dbo = db.db('my');//连接 my 数据库 dbo.collection("stus").find({}).toArray(function(err,res){
if(err) {throw err};
console.log("文档输入成功 插入文档数为",res.insertedCount);
console.log(res);
db.close();
})})
findone查询一个数据
更新数据
更新一条数据
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/';
MongoClient.connect(url,function(err,db){
if(err) {throw err};
var dbo = db.db('my');//连接 my 数据库
const whereStr = {"name":'cxk'}
const updataStr = {$set:{"name":'xz'}} dbo.collection("stus").updateOne(whereStr,updataStr,function(err,res){
if(err) {throw err};
console.log('更新成功');
db.close();
})})
更新多条数据
更新多条数据MongoClient.connect(url,function(err,db){
if(err) {throw err};
var dbo = db.db('my');//连接 my 数据库
const whereStr = {"name":'cxk'}
const updataStr = {$set:{"name":'xz'}} dbo.collection("stus").updateMany(whereStr,updataStr,function(err,res){
if(err) {throw err};
console.log('更新成功 更新数据数量为',res.modifiedCount);
db.close();
})})
连表查询
连表查询
MongoClient.connect(url,function(err,db){
if(err) {throw err};
var dbo = db.db('my');//连接 my 数据库
const myobj = {_id:1,product_id:154,status:1} dbo.collection("orders").insertOne(myobj,function(err,res){
if(err) {throw err};
console.log("文档输入成功");
db.close();
})})
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
var dbo = db.db('my');//连接 my 数据库
const myobj = [ {_id:154,name:'笔记本电脑'}, {_id:155,name:'耳机'},
{_id:156,name:'台式电脑'} ];
dbo.collection("products").insertMany(myobj,function(err,res){//连接stus集合并插入一条数据 if(err) {throw err};
console.log("文档输入成功 插入文档数为",res.insertedCount);
console.log(res);
db.close();
})})
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
var dbo = db.db('my');//连接 my 数据库
dbo.collection("orders").aggregate([//聚合
{
$lookup:
{ from:'products', //右集合
localField:'product_id', //左集合join字段
foreignField:'_id', //右集合join字段
as:'orderdetails' //新生成字段(类型array)
}
}
]).toArray(function(err,res){
if(err) throw err
console.log(JSON.stringify(res));
db.close()
})})
从orders集合中拿出product_id与products集合的_id进行比对 并用新生成字段orderdetails存储
[{"_id":1,"product_id":154,"status":1,
"orderdetails":[{"_id":154,"name":"笔记本电脑"}]
}]
删除数据
删除数据
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
var dbo = db.db('my');//连接 my 数据库
const myobj = {"name":"cxk"}
dbo.collection("stus").deleteOne(myobj,function(err,res){//删除一条数据
if(err) {throw err};
console.log('文档删除成功');
db.close();
})})
MongoClient.connect(url,function(err,db){
if(err) {throw err};
console.log('连接成功');
var dbo = db.db('my');//连接 my 数据库
const myobj = {"name":"wyf"}
dbo.collection("stus").deleteMany(myobj,function(err,res){//删除多条数据
if(err) {throw err};
console.log('文档删除成功 删除文档数量为',res.deletedCount);
db.close();
})})