Condividi tramite


NULLIF (Analisi di flusso di Azure)

Restituisce un valore Null se le due espressioni specificate sono uguali. Ad esempio, SELECT NULLIF(4,4) AS Same, NULLIF(5,7) AS Different ... restituisce NULL per la prima colonna (4 e 4) perché i due valori di input sono uguali. La seconda colonna restituisce il primo valore (5) perché i due valori di input sono diversi.

NULLIF è equivalente a un'espressione CASE avanzata in cui le due espressioni sono uguali e l'espressione risultante è Null.

Sintassi

NULLIF ( expression , expression )

Argomenti

expression

Espressione di qualsiasi tipo.

Tipi restituiti

Restituisce lo stesso tipo di dati del primo argomento expression.

NULLIF restituisce la prima espressione se le due espressioni non sono uguali. Se le espressioni sono uguali, NULLIF restituisce un valore Null del tipo della prima espressione.

Esempio

Proiettare un valore solo quando è stato modificato:

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

Vedere anche