Hilfe: JOIN / SUM aus zwei Tabellen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Hilfe: JOIN / SUM aus zwei Tabellen

    Hallo ich habe folgendes Problem, ich möchte mit einem Select aus zwei Tabellen die Differenz ermitteln. Dafür aber erst einmal die Testtabellen:


    Tabelle1:

    | id | evt_id | a |
    ---1-------3---2
    ---2-------5---1
    ---3-------8---1
    ---4-------3---1

    Tabelle 2:

    | id | evt_id | b |
    ---1-------3---2
    ---2-------3---1
    ---3-------3---1
    ---4-------5---1

    Als Ergebnis möchte ich die Differenz aus Tab1 und Tab2 zu evt_id 3.

    => Ergebnis: -1

    Oder als Abfrage zwei Spalten mit den jeweiligen Summen:

    | summe_a | summe_b |
    ----------3----------4



    Wer kann mir helfen?

    Tausend Dank
    Zuletzt geändert von steza; 07.12.2004, 21:29.

  • #2
    Wo ist das Problem?
    summe über a mit summer über b bei gleichen event-Ids ...
    sagt doch schon alles:

    select t1.evt_id sum(a)-sum(b) ergebnis
    from Tabelle1 t1, Tabelle2 t2
    where t1.evt_id=t2.evt_id
    group by 1

    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      Vielen Dank ...

      ABER!

      Es funzt nur teilweise. Das Problem ist, dass es auch sein kann, dass in tab1 mehrer Einträge zu einer evt_id vorkommen können oder auch gar keine.

      Das heißt es ist eine m:n Beziehung mit der Möglichkeit von NULL Werten.
      (Ich hoffe, ich habe das eingermaßen richtig erklärt.)

      Wie kann ich denn dann noch gruppieren?

      Gruß und Danke

      Kommentar


      • #4
        wenn in tab1 keine werte vorkommen, dann ist auch t1.evt_id NULL und des bringt dir rein gar nichts

        evlt. helfen dir aber JOINs und http://www.php-resource.de/forum/sho...threadid=28292 sowie das entsprechende kapitel im mysql.manual weiter
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar

        Lädt...
        X