Gegevens uit database per maand/jaar weergeven?
Furio Scripting
06/12/2016 11:17:17Goedemorgen,
Ik heb een database met een tabel genaamd: dag_statistieken, daarin kolommen genaamd datum (date) en een totale_omzet (varchar) field.
Voorbeeld:
120,45 - 06-12-2016.
99,95 - 04-11-2016
Ik wil nu per maand een grafiek weergeven met daarin de totale omzet.
Hoe krijg ik dit voor elkaar? Select * FROM dag_statistieken WHERe year = 2016 and group by maand? Zo iets denk?
Toevoeging op 06/12/2016 11:21:53:
Dit lijkt te werken:
Ik heb een database met een tabel genaamd: dag_statistieken, daarin kolommen genaamd datum (date) en een totale_omzet (varchar) field.
Voorbeeld:
120,45 - 06-12-2016.
99,95 - 04-11-2016
Ik wil nu per maand een grafiek weergeven met daarin de totale omzet.
Hoe krijg ik dit voor elkaar? Select * FROM dag_statistieken WHERe year = 2016 and group by maand? Zo iets denk?
Toevoeging op 06/12/2016 11:21:53:
Dit lijkt te werken:
PHP hulp
05/11/2024 15:45:55Zoiets? SELECT MONTH(dag_statistieken) AS maand, totale_omzet FROM dag_statistieken GROUP BY maand
En verder hoort een totale omzet niet als varchar te worden opgeslagen, nu kan je er niet mee rekenen.
En verder hoort een totale omzet niet als varchar te worden opgeslagen, nu kan je er niet mee rekenen.
Gewijzigd op 06/12/2016 11:24:17 door - Ariën -
Ivo P
06/12/2016 12:15:54aangenomen dat je de omzet in een bruikbaar formaat op gaat slaan (een decimal met 2 cijfers achter de komma?)
Op zich is YEAR(datum) overbodig als je ook in WHERE het jaar bepaalt, maar om te voorkomen dat je de query herbruikt in een andere situatie en dan de omzet over 2016 t/m 2017 sommeert, neem ik hem bij voorkeur toch op
Code (php)
1
2
3
4
5
2
3
4
5
SELECT MONTH(datum) AS maand, YEAR(datum) AS jaar, SUM(totale_omzet) AS maandomzet
FROM dag_statistieken
WHERE YEAR(datum) = 2016
GROUP BY MONTH(datum), YEAR(datum)
ORDER BY maand, jaar
FROM dag_statistieken
WHERE YEAR(datum) = 2016
GROUP BY MONTH(datum), YEAR(datum)
ORDER BY maand, jaar
Op zich is YEAR(datum) overbodig als je ook in WHERE het jaar bepaalt, maar om te voorkomen dat je de query herbruikt in een andere situatie en dan de omzet over 2016 t/m 2017 sommeert, neem ik hem bij voorkeur toch op
Furio Scripting
06/12/2016 13:21:29Thomas van den Heuvel
06/12/2016 15:16:03Ivo P
06/12/2016 15:18:03En kijk dan ook even naar het decimaalteken: een komma is ook niet mogelijk in een numeriek veld (en PHP kan ook alleen maar met een punt overweg)