capypad
0 Tage Serie
sql / expert
Snippet

Null-sichere Gleichheit mittels IS NOT DISTINCT FROM

Im Standard-SQL führen NULL-Vergleiche zu UNKNOWN. Das Prädikat IS NOT DISTINCT FROM behandelt NULL als vergleichbaren Wert und gibt TRUE zurück, wenn beide Operanden NULL sind oder beide gleiche Nicht-Null-Werte haben.

snippet.sql
sql
1
2
3
SELECT *
FROM inventory
WHERE current_stock IS NOT DISTINCT FROM restock_threshold;
Erklärung
1
current_stock
Der erste Spalten-Operand, der NULL-Werte enthalten kann.
2
IS NOT DISTINCT FROM
Ein null-sicherer Vergleichsoperator, der die 3-wertige Logik als binäres TRUE/FALSE behandelt, indem NULL-Werte als untereinander gleich betrachtet werden.
3
restock_threshold
Der zweite Operand, gegen den der erste verglichen wird.