Mongodb 减去两个日期结束返回值

Mongodb 减去两个日期结束返回值,mongodb,mongoid,Mongodb,Mongoid,我需要帮助在mongodb中构建一个减法两个日期的查询 我有一些类似上述的文件: {"_id" : "32472034809", "center": "102030", dateArq : 141010, inDate : "ISODate("2014-06-06T02:57:19.000-03:00)", biDate : ISODate("2014-06-07T02:57:19.000-03:00)"} 我正试图写一个查询 db.teste.aggregation([{$match : {

我需要帮助在mongodb中构建一个减法两个日期的查询

我有一些类似上述的文件:

{"_id" : "32472034809", "center": "102030", dateArq : 141010, inDate : "ISODate("2014-06-06T02:57:19.000-03:00)", biDate : ISODate("2014-06-07T02:57:19.000-03:00)"}
我正试图写一个查询

db.teste.aggregation([{$match : {dateArq : 141010}},{$project : {$subtract : ["$biDate" "$inDate"]}}])
事实上,我想做的是:对于每个_id,我想得到biDate-inDate,因为我需要看看dateArq是否保持一条恒常线

在甲骨文中我做到了

select dateArq, (biDate - inDate) diff from teste where dateArq = 141010

Tks for help

提供的文档和聚合管道有语法问题,您需要为
$subtract
的结果输入一个字段名,否则您的管道对我有效:

> db.test.findOne()
{
    "_id" : "32472034809",
    "center" : "102030",
    "dateArq" : 141010,
    "inDate" : ISODate("2014-06-06T05:57:19Z"),
    "biDate" : ISODate("2014-06-07T05:57:19Z")
}
> db.test.findOnedb.test.aggregate([
    { "$match" : { "dateArq" : 141010 } }, 
    { "$project" : { "dateDiff" : { "$subtract" : ["$biDate", "$inDate"] } } }
])
{ "_id" : "32472034809", "dateDiff" : NumberLong(86400000) }