Announcement

Collapse
No announcement yet.

Summe über Tabellen hinweg

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Summe über Tabellen hinweg

    Liebe Brettgemeinde

    Komme sonst mit SQL gut klar, bin hier aber überfordert. Hier die drei Tabellen mit den Feldern (alles integer-Werte, also Zahlen):

    Code:
    TABELLE T
    =========
    TID | S1 | S2 | S3 | S4
    -----------------------
    1   |  3 |  2 |  1 |  5
    2   |  8 |  4 |  2 |  3
    3   |  2 |  6 |  1 |  9
    ....
    
    TABELLE S
    =========
    SID |  P
    --------
    1   |  4
    2   |  0
    3   | -2
    4   |  5
    5   |  8
    6   |  5
    7   |  4
    8   |  1
    9   |  5
    
    (Die Felder S1 bis S4 enthalten Zahlen, die auf SID referenzieren)
    
    TABELLE X
    =========
    T  | SUMME
    ----------
    1  |
    2  |
    3  |
    ...

    Idee:
    Das Feld SUMME der Tabelle X soll upgedatet werden.
    SUMME soll die Summe der Felder P für S1 bis S4 für jedes TID sein. Also:

    UPDATE X SET SUMME = ... ??? und hier komm ich nicht weiter!

    müsste danach folgende Tabelle X ergeben:

    Code:
    TABELLE X
    =========
    T | SUMME
    ---------
    1 | 10
    2 |  4
    3 | 14

    Vielen Dank fürs drüber nachdenken.
    Jan

  • #2
    Hallo Jan,

    also wenn ich das mal rasch so in Access nachbastle komm ich mit folgendem Query zu dem gewünschten Ergebnis. Müsste man halt noch in ein Update umschreiben

    [highlight=sql]SELECT TabelleT.TID, ((SELECT P FROM TabelleS WHERE SID = S1)+
    (SELECT P FROM TabelleS WHERE SID = S2)+
    (SELECT P FROM TabelleS WHERE SID = S3)+
    (SELECT P FROM TabelleS WHERE SID = S4)) AS SUMME
    FROM TabelleT;[/highlight]

    Geht natürlich davon aus das die TabelleT immer nur die Spalten S1-S4 enthält

    Lg Thomas

    Comment

    Working...
    X