Hi Leute,
Ich hoffe ich bin nicht im falschen Forumbereich und der Titel ist nicht zu vermurkst. Falls doch könnt ihr dieses gerne verschieben
Ich bin auf ein (für mich) recht komplexen Punkt gestoßen wo ich jetzt nichtmehr weiter weiß.
Ich hoffe das der ein oder andere mir hier helfen kann oder mir auch einen Denkanstoß geben kann.
Also zu meinem Problem.
Ich habe eine Datenbank mit 2 Tabellen.
In der 1. Tabelle stehen Händlernamen und die PLZ's des Händlers drin.
In der 2. Tabelle die Umsätze, das Datum des Umsatzes und die Händler_id.
Ich möchte jetzt gerne auf 2 Halbjahre die Umsätze ausgeben lassen.
Das Problem ist dabei aber das ich auch die Sortierfunktion (ASC & DESC) nutzen möchte um jedes einzelne Feld zu Sortieren.
Das heißt -> Händlername, PLZ, Umsatz_halbjahr1, Umsatz_halbjahr2
Diese will ich jeweils einzeln auf und Absteigend sortieren.
Das folgende Hier hab ich versucht aber dort kommt ein Fehler das er Umsatz_halbjahr2 nicht kennt.
Code:
$sql = "SELECT billing_name, sum(total_net_amount)
as Umsatz_halbjahr1
FROM
umsatz
JOIN
partner ON umsatz.partner_id = partner.id
WHERE
datum between CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-01-01')
AND
CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-06-30')
GROUP
BY partner_id
union all
SELECT billing_name, sum(total_net_amount)
as Umsatz_halbjahr2
FROM
umsatz
JOIN
partner ON umsatz.partner_id = partner.id
WHERE
datum between CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-07-01')
AND
CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-012-31')
GROUP BY partner_id";
Problem Nummer 2 ist das ich "billing_name" dann 2 mal habe.
Das Order Fehler hier noch wegen der Übersichtlichkeit.
Daher dachte ich Alternativ so in diese Richtung was natürlich nicht geht.
Code:
$sql = "SELECT sum(total_net_amount)
as Umsatz_halbjahr1
WHERE
datum between CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-01-01')
AND
CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-06-30'),
sum(total_net_amount)
as Umsatz_halbjahr2
WHERE
datum between CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-07-01')
AND
CONCAT(DATE_FORMAT(CURRENT_DATE(),'%Y'),'-12-30')
GROUP BY partner_id
Hier hab ich das Join weggelassen um etwas mehr Übersichtlichkeit zu lassen
Wenn mir hier jemand einen Tip geben kann bin ich sehr dankbar.
Auch wenn jemand sagt, "hey du machst da Bullshit, machs lieber so", dann bin ich auch da sehr dankbar
Vielen Dank schonmal im Voraus.
Grüße Maik