GROUP BY ist mehr als nur Gruppieren. Wer die Semantik, ONLY_FULL_GROUP_BY, den Unterschied zwischen WHERE und HAVING sowie die Fan-out-Falle nicht kennt, baut Queries die falsche Zahlen liefern.
Inhaltsverzeichnis
- 1. GROUP BY Semantik: Was die Regel wirklich bedeutet
- 2. ONLY_FULL_GROUP_BY: Was Magento erzwingt
- 3. WHERE vs HAVING: Reihenfolge und Indexnutzung
- 4. GROUP BY mit mehreren Spalten
- 5. WITH ROLLUP: Zwischensummen und Gesamttotals
- 6. Aggregatfunktionen: SUM, COUNT, AVG, GROUP_CONCAT
- 7. Die Fan-out-Falle mit JOINs
- 8. Magento-Praxisbeispiele
- 9. Unterstützung
- 10. Zusammenfassung
- 11. FAQ
1. GROUP BY Semantik: Was die Regel wirklich bedeutet
Die fundamentale Regel von GROUP BY: Jede Spalte, die im SELECT erscheint und keine Aggregatfunktion ist, muss auch in der GROUP BY-Klausel stehen — oder muss funktional vom Primärschlüssel einer