Mongodb的aggregate应用之前已经说过了。

可以参考day06

Mongoose的aggregate函数应用

var mongoose=require('./db.js');
var OrderSchema=mongoose.Schema({
  order_id:String,
  uid:Number,
  trade_no:String,
  all_price:Number,
  all_num:Number
})
var OrderModel=mongoose.model('Order',OrderSchema,'order');
OrderModel.aggregate([
{
  $lookup:{
  from:'order_item',
  localField:"order_id",
  foreignField:"order_id",
  as:"item"
  }
}],function(err,docs){
    console.log(docs)
});
/*查询order_item,找出商品名称是酸奶的商品,酸奶这个商品对应的订单的订单号以及订单的总价格*/

var OrderItemModel=require('./model/order_item.js');

var OrderModel=require('./model/order.js');

var mongoose=require('mongoose');

//第一种实现方式
/*
OrderItemModel.find({"_id":"5b743da92c327f8d1b360546"},function(err,docs){ // console.log(docs); var order_item=JSON.parse(JSON.stringify(docs)); var order_id=order_item[0].order_id; OrderModel.find({"order_id":order_id},function(err,order){ // console.log(order); order_item[0].order_info=order[0]; console.log(order_item)
})
}) */ //第二种方式 //mongoose中获取ObjectId mongoose.Types.ObjectId OrderItemModel.aggregate([ {
$lookup:
{
from: "order",
localField: "order_id",
foreignField: "order_id",
as: "order_info"
}
},{
$match:{_id: mongoose.Types.ObjectId('5b743da92c327f8d1b360546')} } ],function(err,docs){ if(err){ console.log(err)
return;
} console.log(JSON.stringify(docs)) })

最新文章

  1. android--gradle编译龟速?offline!
  2. 关于g++编译模板类的问题
  3. 【POJ】3261 Milk Patterns
  4. UIImage 调整图片大小
  5. DP练习(概率,树状,状压)
  6. javascript判断NaN
  7. windows phone 生产二维码和解码本地二维码图片
  8. Django中生成PDF(一)
  9. [Leetcode][001] Two Sum (Java)
  10. win7 下的open live writer代码插件
  11. java实现——035第一个只出现一次的字符
  12. ArcGIS地图打印那些事
  13. CART决策树和随机森林
  14. Oracle使用PLSQL导入数据后中文乱码的解决方法
  15. 解决expect自动登录,rz和sz不能使用问题
  16. springboot 学习之路 5(打成war包部署tomcat)
  17. 【Codeforces 526D】Om Nom and Necklace
  18. linux 进程 ctrl-c,ctrl-z,ctrl-d
  19. exce中42093和日期之间的关系
  20. 排序(I)

热门文章

  1. SQA定义、质量模型、SQA与测试的关系
  2. JavaSE-29 Java8的Lambda表达式
  3. Java垃圾回收之新生代垃圾收集器
  4. 896. Monotonic Array@python
  5. CodeForces - 930A Peculiar apple-tree(dfs搜索)
  6. python 容器 用户注册登录系统
  7. linux 05
  8. linux常用过滤日志命令
  9. qt c++对象头文件如何相互包含
  10. python中unicode, hex, bin之间的转换