【发布时间】:2016-05-26 06:38:08
【问题描述】:
MongoDB中有计算字段吗?
在 SQL 中我可以做到:
SELECT A+B AS C FROM MYTABLE WHERE C>10
我可以在 MongoDB 中做类似的事情吗?
更新
我做了投影:
db.segments.aggregate(
[
{
$project: {
"_id": 1,
numberOfRestrictions: { $size: "$Speed Restrictions" }
}
}
]
)
它有效。
不幸的是,进一步的流水线不会:
db.segments.aggregate(
[
{
$project: {
"_id": 1,
numberOfRestrictions: { $size: "$Speed Restrictions" }
}
},
{
$match: {
"numberOfRestrictions": {
"$gt": 1
}
}
}
]
)
后者导致错误
The argument to $size must be an Array, but was of type: EOO
【问题讨论】:
-
你能展示一些示例文档和预期的输出吗?
-
第一次单独查询后,文档看起来像
{ "_id" : ObjectId("12345"), "numberOfRestrictions" : 1 } -
我的意思是
segments集合中的一些示例文档以及您对这些示例文档所期望的最终结果。