Details
-
New Feature
-
Resolution: Unresolved
-
Trivial - P5
-
None
-
None
-
None
-
Query Optimization
-
v4.4, v4.2, v4.0
-
Query Optimization 2021-06-14, QO 2021-09-20, QO 2021-10-04, QO 2021-10-18, QO 2021-11-01, QO 2021-11-15, QO 2021-11-29, QO 2021-12-13, QO 2021-12-27, QO 2022-01-10, QO 2022-01-24, QO 2022-02-07, QO 2022-02-21, QO 2022-03-07
-
(copied to CRM)
Description
In our MongoDB-CSharp driver we convert code expressions like that to documents queries.
!(Address.IsDefault && Adress.Name=="foo")
|
The problem here is that the ! operator reverses the meaning of both equality checks. This scenario would be much easier to accomplish when we could use the $not operator like the $or operator.
Example:
{ $not : [
|
{ "Address.IsDefault" : true },
|
{ "Address.Name" : "foo" }
|
] }
|
I think also that this is more the way the users expect to use the $not operator.
Attachments
Issue Links
- is duplicated by
-
SERVER-10708 negation of query expressions using "$not"
-
- Closed
-
- is related to
-
JAVA-4006 Filters can produce invalid query shapes in Java 4.0+
-
- Closed
-
-
SERVER-58772 improve error message for top level $not expression
-
- Closed
-
- related to
-
SERVER-39019 $elemMatch $ne serialization is incorrect, doesn't roundtrip
-
- Closed
-
-
SERVER-43349 Incorrect serialization for $elemMatch $not $ne
-
- Closed
-
-
JAVA-4008 Document JAVA-4006 in Driver Upgrade notes
-
- Closed
-