【问题标题】:mongo-> how to fetch records on datetime desc order from two different collectionsmongo-> 如何从两个不同的集合中获取日期时间 desc 顺序的记录
【发布时间】:2018-06-27 04:53:53
【问题描述】:

我有两个收藏 coin1 和 coin2,我正在尝试根据 DESC 的日期字段顺序从两个收藏中获取记录。其中 coin_id 为 1

coin1 收藏

[{ "_id" : 1, "coin_id" : "1", date: "1516259613150"},
{ "_id" : 2, "coin_id" : "1", date: "1514113680"}]

coin2 收藏

[{ "_id" : 1, "coin_id" : "1", date: "1496836604"},
{ "_id" : 2, "coin_id" : "1", date: "1514113680"},
]]

我正在寻找这样的结果-:

[{ "_id" :1, "coin_id" : "1", date: "1516259613150"},
{ "_id" : 2, "coin_id" : "1", date: "1514113680"}.
{ "_id" : 1, "coin_id" : "1", date: "1514113680"},
{ "_id" : 2, "coin_id" : "1", date: "1496836604"}]

我怎样才能得到这些记录。

这里的日期是 unix 日期格式。

【问题讨论】:

标签: node.js mongodb mongoose


【解决方案1】:

如果你是猫鼬,我想你可以试试这个代码!

Collection.find().sort({'data':'( - or + )1'}).find(function (err, collection){
                   console.log(collection);
       });  

【讨论】:

  • 谢谢,但我想在一个查询中从两个集合中获取记录。
  • 我认为你可以使用 find() 两次。回调中的回调
  • Collection1.find().sort({'data':'( - or + )1'}).find(function (err, collection1){ Collection2.find().sort({ 'data':'( - or + )1'}).find(function (err, collection2){ // 现在你可以使用 2 个集合 collection1, collection2 console.log(collection1,collection2) }); });
  • 但是在上面的代码中你使用了两个不同的变量 coll1 和 coll2 ,但我的要求是根据它们的 desc 顺序将两个集合的数据合并到一个数组中。
猜你喜欢
  • 2018-06-10
  • 2015-06-08
  • 2016-09-15
  • 2019-03-14
  • 1970-01-01
  • 2016-01-06
  • 1970-01-01
  • 2015-01-27
  • 1970-01-01
相关资源
最近更新 更多