Equality and comparison operators in Azure Cosmos DB for NoSQL
APPLIES TO: NoSQL
Equality and comparison operators in Azure Cosmos DB for NoSQL check two different expressions for equivalency or compares both expressions relationally.
Understanding equality comparisons
The following table shows the result of equality comparisons in the API for NoSQL between any two JSON types.
Undefined | Null | Boolean | Number | String | Object | Array | |
---|---|---|---|---|---|---|---|
Undefined | Undefined | Undefined | Undefined | Undefined | Undefined | Undefined | Undefined |
Null | Undefined | Ok | Undefined | Undefined | Undefined | Undefined | Undefined |
Boolean | Undefined | Undefined | Ok | Undefined | Undefined | Undefined | Undefined |
Number | Undefined | Undefined | Undefined | Ok | Undefined | Undefined | Undefined |
String | Undefined | Undefined | Undefined | Undefined | Ok | Undefined | Undefined |
Object | Undefined | Undefined | Undefined | Undefined | Undefined | Ok | Undefined |
Array | Undefined | Undefined | Undefined | Undefined | Undefined | Undefined | Ok |
For comparison operators such as >
, >=
, !=
, <
, and <=
, comparison across types or between two objects or arrays produces undefined
.
If the result of the scalar expression is undefined
, the item isn't included in the result, because undefined
doesn't equate to true
.
For example, the following query's comparison between a number and string value produces undefined
. Therefore, the filter doesn't include any results.
SELECT
*
FROM
products p
WHERE
0 = "true"
Related content
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for