Firebird Documentation IndexFirebird 2.5 SprachreferenzZusatzinformationen → Ein Hinweis zur Gleichheit
Firebird Home Firebird Home Zurück: Das Feld RDB$VALID_BLRFirebird Documentation IndexNach oben: ZusatzinformationenWeiter: Fehlercodes und Meldungen

Ein Hinweis zur Gleichheit

Wichtig

Diese Anmerkung über Gleichheits- und Ungleichheits-Operatoren gilt überall in der Firebird SQL-Sprache.

Der „=“-Operator, welcher ausdrücklich in vielen Bedingungen verwendet wird, prüft nur Werte gegen Werte. Entsprechend dem SQL-Standard, ist NULL kein Wert und somit sind zwei NULLs weder gleich noch ungleich zueinander. Wenn Sie NULLs in Bedingungen vergleichen müssen, nutzen Sie den Operator IS NOT DISTINCT FROM. Dieser gibt wahr zurück, falls die Operanden den gleichen Wert besitzen oder beide NULL sind.

select *
  from A join B
  on A.id is not distinct from B.code

In Fällen in denen Sie gegen NULL innerhalb einer ungleich-Bedingung testen wollen, nutzen Sie IS DISTINCT FROM, nicht „<>“. Möchten Sie NULL unterschiedlich zu anderen Werten und zwei NULLs als gleich betrachten:

select *
  from A join B
  on A.id is distinct from B.code
Zurück: Das Feld RDB$VALID_BLRFirebird Documentation IndexNach oben: ZusatzinformationenWeiter: Fehlercodes und Meldungen
Firebird Documentation IndexFirebird 2.5 SprachreferenzZusatzinformationen → Ein Hinweis zur Gleichheit