SQL Statement um die leeren Felder durch eine 0 zu ersetzen

1 Antwort

Wenn deine "leeren" Felder den SQL-Wert NULL enthalten (so wie man das normalerweise für leere Felder macht), dann geht das so:

 SELECT Titel, COALESCE(Feldname, 0) FROM Musikstuecke

Diese Anweisung liefert (nach dem Titel) den Inhalt von "Feldname", soferne dieser nicht NULL ist. Ist er hingegen NULL, dann liefert die Anweisung 0.

Statt "Feldname" musst du natürlich die von dir gewünschte Spalte eintragen.

Niklas526 
Fragesteller
 03.11.2013, 19:10

Danke dir. Weißt du ob sowas auch mit der NVL Funktion möglich ist? Kannst du hier auch ein Syntax-Beispiel geben?

0
ultrarunner  04.11.2013, 08:48
@Niklas526

Ja, das geht auch. NVL hat für deinen Zweck (also bei 2 Argumenten) genau dieselbe Syntax wie COALESCE.

Allerdings gibt's NVL nur bei Oracle, wohingegen COALESCE dem SQL-Standard entspricht und von den meisten Datanbanksystemen unterstützt wird (inkl. Oracle).

0