Gegevens uit database per maand/jaar weergeven?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Furio Scripting

Furio Scripting

06/12/2016 11:17:17
Quote Anchor link
Goedemorgen,

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:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT * FROM dag_statistieken group by Year(datum), Month(datum)
 
PHP hulp

PHP hulp

25/04/2024 19:17:46
 
- Ariën  -
Beheerder

- Ariën -

06/12/2016 11:23:47
Quote Anchor link
Zoiets? 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.
Gewijzigd op 06/12/2016 11:24:17 door - Ariën -
 
Ivo P

Ivo P

06/12/2016 12:15:54
Quote Anchor link
aangenomen dat je de omzet in een bruikbaar formaat op gaat slaan (een decimal met 2 cijfers achter de komma?)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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


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

Furio Scripting

06/12/2016 13:21:29
Quote Anchor link
Hartelijk dank voor de nuttige toevoegingen!
 
Thomas van den Heuvel

Thomas van den Heuvel

06/12/2016 15:16:03
Quote Anchor link
Een DATE kolom was toch van het formaat YYYY-MM-DD? Zoja, dan klopt je sample data niet.
 
Ivo P

Ivo P

06/12/2016 15:18:03
Quote Anchor link
En 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)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.