Bu nedenle, aşağıdaki toplama işlemine sahibim ve error invalid operatör $$ event.info aldım.MongoDB - Geçersiz İşleci - Toplama
db.days.aggregate([
{
$match : { 'day' : 'March_1'}
},
{
$project:
{
_id:0,
day: 1,
events:
{
$filter:
{
input: '$events',
as: 'event',
cond:
{
$and:
[
{
$eq: ['$$event.year', '2002']
},
{
'$$event.info' : {$regex: '.*peseta.*'}
}
]
}
}
}
}
}
])
Olay bir tür nesneler ile dizi
{
year : "x"
info : "y"
}
bazı bir açıklama bana yardım eder misiniz nedir?
Şimdiden teşekkürler!
You '$ regex' kullanamaz' $ project' – styvane
bir kullanabilmek için herhangi bir geçici çözüm var mı $ $ projesinde $ regex işlevi gibi? –
Belirtildiği gibi, '$ regex' ifadesi için" mantıksal "bir karşılığı yoktur. Burada sizin durumunuzda diziyi '' gevşeyin '' ve sonra sıradan bir sorgu ifadesiyle '$ match'' gerekir. Aynı koşulu ilk $ $ match'ınıza da eklemenizi şiddetle tavsiye ediyorum. Aksi takdirde, sadece dizi elemanlarının koşullarla eşleşemeyeceği belgeleri seçersiniz. Tabii ki olası "boş" dizileri de iade etmeyi düşünmüyorsunuz. –