晚上好。我在MongoDB中有一个项目,在尝试运行我的最后一个查询时,我总是得到一个错误。我拥有的数据集是关于葡萄酒的。我想做的是打印与红酒类别匹配的葡萄酒,并且至少有20年的历史(我有一个开始日期-它们被放入桶中的日期-和一个结束日期,它们被装瓶的日期)。注意:我希望所有这些字段都打印在最后,并且根据它们的评级打印。
让我给予一个数据的例子:
{ _id: ObjectId("638f389d8830abb3f19aaf51"),
tconst: 'tt0040030',
wineType: 'Red',
Brand: '#brand',
startYear: 1990,
endYear: 2002
rating:6.6}
当我使用$match函数作为我的三个标准时,一切都很好,但是我还没有弄清楚如何减去两个日期字段,这样我就可以找到至少20年的葡萄酒,并正确地打印结果。
2条答案
按热度按时间tf7tbtn21#
在mongoDB中,$where查询操作符用于比较最符合java脚本表达式的字段或文档。我们还可以传递一个字符串
6bc51xsx2#
查询
$expr
和聚合运算符red
酒,用years difference>=20
,然后按rating
进行排序。Playmongo