你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用范围: NoSQL
Azure Cosmos DB for NoSQL 中的相等运算符和比较运算符可检查两个不同的表达式是否相等,或者比较这两个表达式的关系。
了解相等比较
下表显示了 API for NoSQL 中任何两种 JSON 类型之间等式比较的结果。
| Undefined | Null | 布尔 | Number | 字符串 | 对象 | Array | |
|---|---|---|---|---|---|---|---|
| Undefined | Undefined | Undefined | Undefined | Undefined | Undefined | Undefined | Undefined |
| Null | Undefined | 正常 | Undefined | Undefined | Undefined | Undefined | Undefined |
| 布尔值 | Undefined | Undefined | 正常 | Undefined | Undefined | Undefined | Undefined |
| 数字 | Undefined | Undefined | Undefined | 正常 | Undefined | Undefined | Undefined |
| 字符串 | Undefined | Undefined | Undefined | Undefined | 正常 | Undefined | Undefined |
| Object | Undefined | Undefined | Undefined | Undefined | Undefined | 正常 | Undefined |
| 数组 | Undefined | Undefined | Undefined | Undefined | Undefined | Undefined | 正常 |
对于 >、>=、!=、< 和 <= 等比较运算符,跨类型的比较或者两个对象或数组之间的比较会生成 undefined。
如果标量表达式的结果为 undefined,则不会将该项包含在结果中,因为 undefined 不等于 true。
例如,以下查询在数字和字符串值之间进行的比较生成 undefined。 因此,筛选器不包含任何结果。
SELECT
*
FROM
products p
WHERE
0 = "true"