Hi everyone
I was wondering how to implement the $nor operator in MongoDB Compass aggregation pipeline.
Can anyone help me with this issue please?
Sincerely
Ezequias Rocha
Hi everyone
I was wondering how to implement the $nor operator in MongoDB Compass aggregation pipeline.
Can anyone help me with this issue please?
Sincerely
Ezequias Rocha
Hi @Ezequias_Rocha!
I don’t know if I understood correctly, but follow an example using a pipeline where $nor is applied to the $match stage. Consider the following documents in the sales collection:
{
"_id" : 1,
"item" : "abc",
"price" : 10,
"fee" : 2,
"date" : ISODate("2014-03-01T08:00:00Z")
}
{
"_id" : 2,
"item" : "jkl",
"price" : 20,
"fee" : 1,
"date" : ISODate("2014-03-01T09:00:00Z")
}
{
"_id" : 3,
"item" : "xyz",
"price" : 5,
"fee" : 0,
"date" : ISODate("2014-03-15T09:00:00Z")
}
To search only documents where the price field is not equal to 20 or the fee field is not equal to 2, it would be as follows:
db.sales.aggregate(
[
{
$match: {
$nor: [
{ price: 20 },
{ fee: 2 }
]
}
}
]
)
I hope I have helped, otherwise detail your need a little more!
It could work but it is not working in MongoDB Compass. Could you check this out at this tool?
Regards
Ezequias.
The aggregation by @Leandro_Domingues works fine in the mongo
shell. But, somehow it doesn’t in the MongoDB Compass (using version 1.19.6). I have the MongoDB version 4.2.3.
The way the $match
stage filter is specified in the Compass GUI is:
/**
* query - The query in MQL.
*/
{
$nor: [ { "price": 20 }, { "fee": 2 } ]
}
There is an error: Expected "[" or AggregationStage but "{" found.
The aggregation query with $or
works fine in the Compass, e.g.,:
{
$or: [ { "price": 20 }, { "fee": 2 } ]
}
Right @Prasad_Saya
Could someone open an issue in MongoDB Jira please?
It’s strange noone have already tested if before.
Best wishes
Ezequias Rocha
The issue: https://jira.mongodb.org/browse/COMPASS-4241
Hi Ezequias,
FYI, you can also create bug reports in Jira. There’s single sign-on with the same account you are using for the community forum: https://jira.mongodb.org/browse/COMPASS.
Regards,
Stennie
This is fixed in the upcoming 1.21 release.