У меня есть этот тип объекта в коллекции Mongo:
[ ...
{array: ['keyword1', 'keyword2'], someField: "text", ...}
...
]
Я хочу использовать агрегацию, подобную этой:
db.getCollection("SomeCollection").aggregate(
[ ...
{ "$project" : { "size" : {"$size" : "$someField"}}}
{ "$match": {size: {$gte: 2} } }
...
])
Когда я добавляю шаг сопоставления, у меня естьэто сообщение об ошибке:
{
"ok" : 0.0,
"errmsg" : "The argument to $size must be an array, but was of type: missing",
"code" : NumberInt(17124),
"codeName" : "Location17124"
}
Я уверен, что есть массивы с более чем 2 элементами.
Мне любопытно, почему эта ошибка.Для записи у меня есть обходной путь, использующий $ where в запросе coll.find.