Azure Cosmos DB for NoSQL 中的相等运算符和比较运算符

适用范围: NoSQL

Azure Cosmos DB for NoSQL 中的相等运算符和比较运算符可检查两个不同的表达式是否相等,或者比较这两个表达式的关系。

了解相等比较

下表显示了 API for NoSQL 中任何两种 JSON 类型之间等式比较的结果。

Undefined Null 布尔 Number 字符串 对象 Array
未定义 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 不等于 true

例如,以下查询在数字和字符串值之间进行的比较生成 undefined。 因此,筛选器不包含任何结果。

SELECT
    *
FROM
    products p
WHERE 
    0 = "true"