MongoDB自定义字段查询

时间:2014-04-29 18:17:03

标签: sql mongodb nosql

我不确定这是一个重复的问题(我不这么认为),但对我来说这是一个非常有趣的问题:

在SQL中,我们可以创建自定义字段并将其放在结果中:

SELECT *.p, totalOrder=(SELECT sum(price) from orders where id=p.id)

FROM products p;

因此结果是具有totalSales值的产品列表。

NoSQL(MongoDB)中最好的方法是什么, 我相信我们应该有两种类型的文档(产品和订单)所以我知道我们没有加入,但问题是我们在查找查询时是否有自定义字段分配?

1 个答案:

答案 0 :(得分:1)

当您使用aggregation时,您的$project操作就是这样。它用于重命名字段或通过some simple operators派生字段值。但与MongoDB一样,您无法从其他集合中获取任何数据。

当您需要执行过于复杂而无法通过聚合表达的内容时,您可以使用MapReduce并使用Javascript构建输出文档。但同样,没有突破收藏。