SQLite NULL addieren

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von T1g0r.

    SQLite NULL addieren

    Hi,
    ich möchte aus meiner Datenbank Summen berechnen und addieren.
    So sieht mein Befehl aus:

    SQL-Abfrage

    1. SELECT (SELECT SUM(Betrag) FROM Haushaltsbuch WHERE Rechnung = 'Haben') - (SELECT SUM(Betrag) FROM Haushaltsbuch WHERE Rechnung = 'Soll') + 1000

    Das klappt auch wenn Daten vorhanden sind. Sind allerdings keine Daten vorhanden bekomme ich ein NULL. Weil eben die Einzelrechnungen, also z.B.

    SQL-Abfrage

    1. SELECT SUM(Betrag) FROM Haushaltsbuch WHERE Rechnung = 'Haben'
    auch NULL sind.
    Und NULL kann ich nicht mit den 1000 am Ende addieren. Wie kann ich es realisieren, dass wenn keine Daten vorhanden sind, das ich trotzdem die 1000 erhalte?
    Danke
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia
    ahoi,

    mal auf die schnell würde mir spontan einfallen das du die NULL felder rauslässt ....
    also abfragst WHERE ... IS NOT NULL
    das müsstest du eigentlich mit einer AND verknüpfung an jede anweisung anhängen können

    also so zb.

    SQL-Abfrage

    1. SELECT (SELECT SUM(Betrag) FROM Haushaltsbuch WHERE Rechnung = 'Haben' AND WHERE Betrag IS NOT NULL ) - (SELECT SUM(Betrag) FROM Haushaltsbuch WHERE Rechnung = 'Soll' AND Betrag IS NOT NULL) + 1000

    das müsste an sich glaub ich funktionieren
    Grüße Manu

    Was Gott dem Menschen erspart hat, kann der Computer.
    Billy ©, (*1932), Schweizer Aphoristiker
    Quelle: www.Aphorismen.de
    @Manü:
    Mein Problem ist ja nicht, das einige Werte Null haben und ich die addieren will sondern das in der Tabelle garkeine Einträge vorhanden sind, und ich dadurch ein Null bekomme. Das hab ich wohl nicht richtig formuliert.

    @picoflop:
    Ne, hab ich auch schon versucht.
    SELECT SUM(betrag) ergibt Null, und da kann ich nichts addieren. Habs auch schon mit CAST bzw CONVERT versucht, ging aber auch nicht richtig.

    EDIT:
    Ich habs mit IFNULL hinbekommen. Das habe schonmal versucht, da gings aber auch nicht richtig.
    Jetzt versuche ich schon tagelang das hinzubekommen, und dann morgens, noch total verschlafen gehts aufeinmal :D

    Danke trotzdem für die Mühe
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „T1g0r“ ()

    Danke pico. Siehe EDIT vom Post zuvor :)
    Muss da wohl die Klammern oder so falsch gesetzt haben...
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia