mongodb:按索引或其他字段进行数组筛选
过滤阵列时,是否可能:mongodb:按索引或其他字段进行数组筛选,mongodb,Mongodb,过滤阵列时,是否可能: 按项索引筛选(例如,获取除第一个之外的所有数组元素) 是否在包含数组字段的同一文档中的另一个字段中按值筛选 考虑文件: { _id: 1, first_seen_on: 20160312, seen_on: [20160312, 20160313, 20160324] } 我需要在数组上看到的变成[2016031320160324] 这似乎不起作用(我认为$first\u seen\u on被视为文字值): 使用如下 db.collection.agg
{
_id: 1,
first_seen_on: 20160312,
seen_on: [20160312, 20160313, 20160324]
}
我需要在数组上看到的变成[2016031320160324]
这似乎不起作用(我认为$first\u seen\u on
被视为文字值):
使用如下
db.collection.aggregate([
{
"$project": {
"repeats": {
"$setDifference": ["$seen_on", ["$first_seen_on"]]
}
}
}
])
样本输出
/* 1 */
{
"_id" : 1,
"repeats" : [
20160313,
20160324
]
}
当您说过滤时,您指的是聚合管道中的过滤阶段??过滤聚合管道项目阶段中的数组,如我包含的示例代码中所示。
/* 1 */
{
"_id" : 1,
"repeats" : [
20160313,
20160324
]
}