Entwickler-Ecke

Datenbanken (inkl. ADO.NET) - Frage zur SQL und SUM Funktion


highlander78 - Mi 05.05.10 17:24
Titel: Frage zur SQL und SUM Funktion
Hallo,

teste gerade die SUM Funktion und hänge mal wieder...

habe eine Tabelle die 3 Spalten hat , Spalte 1 ..2 und 3.
In jeder Spalte ist eine Zahl.

Meine SQL Abfrage sieht so aus:


SQL-Anweisung
1:
SELECT SUM(Spalte1+Spalte2+Spalte3)as Summe FROM Tabelle                    


Es sieht alles gut aus und ich bekomme auich ein Ergebnis so lange in jeder Spalte eine Zahl steht. Das Problem ist dass es passieren kann dass in irgend einer Spalte gar nichts steht (z.B Spalte 1) dann sollte aber die Summe aus den anderen 2 Spalten angezeigt werden, was aber nicht der Fall ist...dann bekomm ich überhaupt keine Ausgabe.


Gruss
highlander78


JüTho - Mi 05.05.10 17:28

Hallo,

interessiert dich nur die Gesamtsumme? Dann mach es doch so:

SQL-Anweisung
1:
SELECT (SUM(Spalte1) + SUM(Spalte2) + SUM(Spalte3)) as Summe FROM Tabelle                    

Zur Erklärung: NULL ist ja nicht der Wert 0 (Null), sondern ein UNBEKANNTER Wert. Unbekannt plus Etwas ergibt natürlich Unbekannt.

Gruß Jürgen


highlander78 - Mi 05.05.10 19:25

Hallo Jürgen,

leider bekomme ich bei deiner Lösung das gleiche Ergebnis wie davor.
Wenn in irgend einer Spalte nichts steht dann bekomme ich überhaupt keine Ausgabe.

Gruss


danielf - Do 06.05.10 07:46

Das meint Jürgen ja, dass du zwingend etwas in der Spalte ungleich Null brauchst.


JüTho - Do 06.05.10 09:35

Vielleicht hilft dir auch die Formulierung unter [wikibooks] Einführung in SQL [http://de.wikibooks.org/wiki/Einf%C3%BChrung_in_SQL:_Funktionen#SUM_.E2.80.93_Summe]. Allerdings stammt auch diese Formulierung von mir.

Jürgen


highlander78 - Do 06.05.10 10:23

Alles klar , habs verstanden.

Gruss