#1111 - Invalid use of group function
Askan
- datenbank
Hi,
ein Problem mit meiner Abfrage. Alles Funktioniert wunderbar, bis auf die WHERE Klausel. Sobald hier ein SUM() oder MAX() auftaucht, kommt die Fehlermeldung "#1111 - Invalid use of group function".
SELECT (
sum( rp.anzahl ) / DATEDIFF(
MAX( r.datum ) , MIN( r.datum )
)
) AS verkauft_pro_tag
FROM artikel AS ar
LEFT JOIN unterwarengruppe AS uwg ON ar.unterwarengruppen_id = uwg.id
LEFT JOIN rechnungsposition AS rp ON ar.artikel_id = rp.artikel_id
LEFT JOIN rechnung AS r ON rp.rechnungs_id = r.id
WHERE (
sum( rp.anzahl ) / DATEDIFF(
MAX( r.datum ) , MIN( r.datum )
)
) LIKE "%999998948%"
GROUP BY rp.anzahl, r.datum
Ich habe annähernd alle Felder für GROUP BY ausprobiert, einige Stunden im Netz gesucht jedoch ohne Erfolg.
Kennt sich jemand mit diesem Problem aus?
Danke Askan
echo $begrüßung;
ein Problem mit meiner Abfrage. Alles Funktioniert wunderbar, bis auf die WHERE Klausel. Sobald hier ein SUM() oder MAX() auftaucht, kommt die Fehlermeldung "#1111 - Invalid use of group function".
Aggregatfunktionen haben in der WHERE-Klausel nichts zu suchen, können aber in der HAVING-Klausel notiert werden, welche der GROUP-BY-Klausel folgen darf.
echo "$verabschiedung $name";
Super vielen Dank,
denke mit Having bekomme ich das hin.
viele grüße
askan
hi,
Alles Funktioniert wunderbar, bis auf die WHERE Klausel. Sobald hier ein SUM() oder MAX() auftaucht, kommt die Fehlermeldung "#1111 - Invalid use of group function".
Und worüber genau wundern wir uns jetzt, nachdem wir bei der Beschreibung der SELECT-Syntax nachgelesen haben,
"In the WHERE clause, you can use any of the functions and operators that MySQL supports, except for aggregate (summary) functions"
...?
gruß,
wahsaga