NULLIF (Azure 流分析)

如果两个指定的表达式相等,则返回空值。 例如, SELECT NULLIF(4,4) AS Same, NULLIF(5,7) AS Different ...NULL 返回第一列 (4 和 4) ,因为两个输入值相同。 第二列返回第一个值 (5),因为两个输入值不同。

如果两个表达式相等且结果表达式为 NULL,则 NULLIF 等价于 CASE 搜索表达式。

语法

NULLIF ( expression , expression )

参数

expression

任何类型的表达式。

返回类型

返回类型与第一个 expression 相同。

NULLIF 如果两个表达式不相等,则返回第一个表达式。 如果表达式相等, NULLIF 则返回第一个表达式类型的 null 值。

示例

仅在更改值时投影值:

SELECT
     sensorId,
     reading,
     NULLIF(
        LAG(reading) OVER (PARTITION BY sensorId LIMIT DURATION(hour, 1)),
        reading
      ) AS previous_reading_if_changed
FROM input

另请参阅