Hallo zusammen,
ich habe ein mittel- bis großes Problem und hoffe hier die nötige Hilfe zu bekommen.
Also, ich versuche es mal zu beschreiben:
Tabelle [Felder]
vorgang [id, rech_cat, rech_date, rech_nr, kunden_id, zahlungs_eingang]
positionen [id, rech_nr, artikel_id, menge, pos_zusatz_id, pos_auftrag, sort, artikel_frei_id]
kunden [id, kunden_id, firma_name, anrede, vorname, nachname, plz, ort, strasse....]
artikel [id, text, beschreibung, einheit, preis]
artikel_frei [id, rech_nr, artikel_frei_id, text, beschreibung, einheit, preis]
Ich versuch jetzt folgende Ausgabe zu bekommen:
Datum, RechnungsNr, KundenName, FimenName, Summe, Buchungsdatum
wobei das Problem meiner Meinung nach bei der Summe besteht.
In Tabelle "vorgang" und "positionen" steht die Rechnungs-Nr.
In der Tabelle "positionen" stehen die einzelnen Positionen zur jeweiligen Rechnung
mit Mengenangaben und die dazugehörige Artikel_ID oder Artikel_frei_ID aus den Tabellen
"Artikel" und "Artikel_frei".
Jede einzelne Mengenangabe aus Tabelle "positionen" muß mit dem Preis aus der Tabelle
"artikel" und/oder "artikel_frei" multipliziert werden so das eine Gesamtsumme pro Vorgang
ausgegeben wird, wäre etwa so etwas
SUM(P.menge * A.preis) + IFNULL(SUM(P.menge * F.preis), 0)
Ich habe irgendwie schon alle Variationen von JOIN , UNION und was weiß ich noch alles durch.
Ich komme einfach nicht weiter.
bei folgendem Beispiel bekomme ich aber leider nur einen Vorgang ausgegeben:
"SELECT V.*, K.nachname, K.vorname, K.firma_name,
SUM(P.menge * A.preis) + IFNULL(SUM(P.menge * F.preis), 0) AS PREIS
FROM vorgang AS V, kunden AS K, positionen as P
LEFT JOIN artikel AS A ON P.artikel_id = A.id
LEFT JOIN artikel_frei AS F ON P.artikel_frei_id = F.artikel_frei_id
WHERE V.kunden_id = K.kunden_id
AND V.rech_nr = P.rech_nr
AND V.rech_cat = 'RE'"
Wäre prima wenn mir da jemand auf die Sprünge helfen könnte.
Achso, falls es wichtig ist, ich möchte das per PHP Ausgabe.
Vielen Dank schonmal, hoffe ist einigermaßen verständlich
ich habe ein mittel- bis großes Problem und hoffe hier die nötige Hilfe zu bekommen.
Also, ich versuche es mal zu beschreiben:
Tabelle [Felder]
vorgang [id, rech_cat, rech_date, rech_nr, kunden_id, zahlungs_eingang]
positionen [id, rech_nr, artikel_id, menge, pos_zusatz_id, pos_auftrag, sort, artikel_frei_id]
kunden [id, kunden_id, firma_name, anrede, vorname, nachname, plz, ort, strasse....]
artikel [id, text, beschreibung, einheit, preis]
artikel_frei [id, rech_nr, artikel_frei_id, text, beschreibung, einheit, preis]
Ich versuch jetzt folgende Ausgabe zu bekommen:
Datum, RechnungsNr, KundenName, FimenName, Summe, Buchungsdatum
wobei das Problem meiner Meinung nach bei der Summe besteht.
In Tabelle "vorgang" und "positionen" steht die Rechnungs-Nr.
In der Tabelle "positionen" stehen die einzelnen Positionen zur jeweiligen Rechnung
mit Mengenangaben und die dazugehörige Artikel_ID oder Artikel_frei_ID aus den Tabellen
"Artikel" und "Artikel_frei".
Jede einzelne Mengenangabe aus Tabelle "positionen" muß mit dem Preis aus der Tabelle
"artikel" und/oder "artikel_frei" multipliziert werden so das eine Gesamtsumme pro Vorgang
ausgegeben wird, wäre etwa so etwas
SUM(P.menge * A.preis) + IFNULL(SUM(P.menge * F.preis), 0)
Ich habe irgendwie schon alle Variationen von JOIN , UNION und was weiß ich noch alles durch.
Ich komme einfach nicht weiter.
bei folgendem Beispiel bekomme ich aber leider nur einen Vorgang ausgegeben:
"SELECT V.*, K.nachname, K.vorname, K.firma_name,
SUM(P.menge * A.preis) + IFNULL(SUM(P.menge * F.preis), 0) AS PREIS
FROM vorgang AS V, kunden AS K, positionen as P
LEFT JOIN artikel AS A ON P.artikel_id = A.id
LEFT JOIN artikel_frei AS F ON P.artikel_frei_id = F.artikel_frei_id
WHERE V.kunden_id = K.kunden_id
AND V.rech_nr = P.rech_nr
AND V.rech_cat = 'RE'"
Wäre prima wenn mir da jemand auf die Sprünge helfen könnte.
Achso, falls es wichtig ist, ich möchte das per PHP Ausgabe.
Vielen Dank schonmal, hoffe ist einigermaßen verständlich