Ich habe Probleme beim Schreiben einer MySQL-Unterabfrage.mysql Unterabfrage auf der gleichen Tabelle
Die Tabelle SALES hat die Spaltennamen:
sales_date | staff_id | sales_amount
jedes einzelnen Mitarbeiters Verkäufe aufzuzeichnen.
Was ich mit dieser Abfrage erreichen möchte, ist eine Tabelle, die den durchschnittlichen täglichen Umsatz eines ausgewählten Mitarbeiters sowie den durchschnittlichen täglichen Umsatz aller Mitarbeiter anzeigt. Ich möchte nur Tage anzeigen, an denen der ausgewählte Mitarbeiter einen Umsatz erzielt hat.
SELECT staff_id, sales_date, AVG(sales_amount) AS avgsales, sales_amount
FROM sales
GROUP BY sales_date
WHERE
(SELECT sales_date
FROM sales
WHERE staff_id = $staff_id) // this subquery shows all the dates that staff has records in
Ich mag es so etwas wie dies anzuzeigen:
Staff_id | Sales date | AverageSales | Employee_sales
---------+------------+--------------+----------------
001 | 2016-04-18 | £2000 | £1800
---------+------------+--------------+----------------
001 | 2016-04-17 | £3405 | £4000
---------+------------+--------------+----------------
001 | 2016-04-16 | £1450 | £1400
---------+------------+--------------+----------------
das hat super funktioniert, vielen Dank! –
Wenn Sie der Meinung sind, dass dies eine korrekte Antwort ist, klicken Sie auf das Häkchen neben der Frage, damit andere die richtige Antwort auf diese Seite sehen. – kainaw