Hallo geehrtes Forum,
ich möchte gerne folgenden funktionierenden Query optimieren:
SELECT RgNr,
FORMAT(
( SELECT SUM( preis ) FROM tour WHERE rechnung_id = rechnung.id ), 2)
netto,
FORMAT(
( SELECT SUM( preis ) + SUM( ( mwst * preis/100 ) ) FROM tour WHERE rechnung_id = rechnung.id ), 2)
brutto
FROM rechnung
ORDER BY rgnr
Es gibt eine Tabelle 'rechnung' mit den Spalten id und rgnr.
Und es gibt eine Tabelle 'tour' mit den Spalten rechnung_id, preis und mwst.
Ausgeworfen werden sollen alle Rechnungen mit der berechneten Rechnungssumme netto und brutto. Einfache Sache eigentlich...
Diese zwei Subselects funktionieren, sind aber wahrscheinlich nicht optimal. Eleganter und performanter wäre wohl, ich würde die beiden Tabellen mit einem Join verknüpfen? Wenn ja, mit welchem? Irgendwie habe ich das Konzept der Joins immer noch nicht geblickt, trotz mehrmaligem Studieren der beiden Threads, auf die oft verwiesen wird. Mir schwirrt der Kopf von den vielen verschiedenen Möglichkeiten: es fällt mir schwer, gegebene Beispiele auf meinen Fall zu abstrahieren und durch Ausprobieren den richtigen Weg zu finden, gestaltet sich als schwierig - vielleicht mag jemand mir einen kurzen Wink in die richtige Richtung geben?
Verjointe INNEROUTERLEFTRIGHT Grüße
JOhnnY