IS NULL-Operator

Der IS NULL-Operator kann in beliebig komplexen Suchbedingungen verwendet werden. Er liefert TRUE als Ergebnis, wenn der Ausdruck leer ist bzw. FALSE, wenn Datenwerte gegeben sind. Somit steht eine Möglichkeit zur Verfügung, leere Spalten oder Ausdrücke gemäß der Logik der Aufgabenstellung explizit zu handhaben. Ohne diesen Operator werden die meisten SQL-Vergleichsoperatoren zu UNKNOWN ausgewertet, dieses UNKOWN pflanzt sich dann über die booleschen Operatoren (AND, OR NOT) fort und dann ist letztendlich die Gesamtbedingung UNKNOWN, so dass dieser Datensatz mit der leeren Spalte nicht in der Ergebnismenge auftritt. Mit NOT kann der Operator invertiert werden. Der IS NULL-Operator ist definiert für alle vordefinierten Datentypen, nicht aber für die benutzerdefinierte Datentypen.

Syntax des Oracle-/SQL-Operators IS NULL:

  <IS NULL-Operator>  ::=  <Ausdruck> IS [ NOT ] NULL]] }

Beispiele:

   -- Welche Angestellten haben keine Telefonnummer eingetragen? 
   SELECT * 
     FROM Angestellte
    WHERE Telefon_Nr IS NULL;

   -- Welche Kunden wird ein Rabatt gewährt?  
   SELECT *
     FROM Kunden
    WHERE Rabatt IS NOT NULL; 

Quellen:

  • INCITS/ISO/IEC 9075-1-2008. Part 1 "SQL/Framework", ISO International Organization for Standardization / INCITS InterNational Committee for Information Technology Standards, 2008
  • INCITS/ISO/IEC 9075-1-2008. Part 2 "SQL/Foundation", ISO International Organization for Standardization / INCITS InterNational Committee for Information Technology Standards, 2008
  • Elmasri, Ramez/Navathe, Shamkant B.: "Grundlagen von Datenbanksystemen" , Pearson Studium, München, 2002, ISBN 3-8273-7021-3
  • Melton, Jim/Simon, Alan R.: "SQL: 1999 - Understanding Relational Language Components", Morgan Kaufmann, San Francisco, 2001, ISBN 1558604561
  • Oracle® Database SQL Language Reference 11g Release 2 (11.2), E17118-03, August 2010, http://download.oracle.com/docs/cd/E11882_01/server.112/e17118.pdf
  • Saake, Gunter/Sattler, Kai-Uwe/Heuer, Andreas: "Datenbanken - Konzepte und Sprachen", mitp-Verlag, Redline GmbH, Heidelberg, 2007, ISBN 3-8266-1664-2

Kategorie: SQL, I, N