[PHP] Mysql Subquery

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Blackb!rd, 19. Januar 2011 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 19. Januar 2011
    Mysql Subquery

    Hey Leute,

    ich habe ein Problem mit meinen Subquerys, vielleicht kennt sich ja jemand damit sehr gut aus.

    Folgendes Beispiel:

    Es gibt 2 Tabellen "rechnungen" und "positionen". Nehmen wir an wir wollen eine Liste ausgeben mit allen Rechnungs-Nummern und dazu dem Betrag der sich aus den zur Rechnunge gehörenden Positionen ergibt.

    Dieses würde ich gerne in EINEM Query lösen.

    Hiernochmal ein Ansatz:

    Code:
    SELECT rechnungs_nr,(SELECT SUM(betrag) FROM positionen WHERE position.rechnungs_nr = rechnungen.rechnungs_nr) as betrag FROM rechnungen
    Mein Problem bei der Sache: Ich kann nicht aus dem Sub-Query auf Daten im Haupt-Query zurückgreifen, also im Sub-Query kann ich die Rechnungs-Nr die im Haupt-Query geladen wird nicht ansprechen.


    Vielleicht kann mir ja jemand auf die Sprüge helfen.


    Gruß Blackbird89
     
  2. 19. Januar 2011
    AW: Mysql Subquery

    guck dir mal joins an.
    da würde dann sowas ähnlich wie:

    Code:
    SELECT t1.rechnungs_nr,SUM(t2.betrag) from rechnung as t1, position as t2 WHERE t2.rechnungs_nr = t1.rechnungs_nr
    rauskommen
     
  3. 19. Januar 2011
    AW: Mysql Subquery

    ein einfacher alias auf die tabellen reicht und du kannst in sub-selects voll drauf zugreifen.

    Code:
    SELECT 
     r.`rechnungs_nr`,
     ( SELECT SUM(p.`betrag`) 
     FROM positionen p 
     WHERE p.rechnungs_nr = r.rechnungs_nr ) `betrag`
     
    FROM rechnungen r
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.