Mysql resultaten in array | Resultaten bij elkaar optellen
Weet iemand hoe ik ervoor kan zorgen dat alle gegevens van de kolom DATA uit de onderstaande tabel bij elkaar opgeteld kunnen worden of hoe ik ze in een array kan zetten. Mij lukt het namenlijk niet.
+ ------------------------ +
| ID | DATA | DATE |
+ ------------------------ +
| 1 | 4 | 050116 |
| 2 | 7 | 050116 |
| 3 | 4 | 060116 |
| 4 | 9 | 060116 |
| 5 | 2 | 070116 |
+ ------------------------ +
(Excuses voor de rare uitleinding. Hij pakt spaties niet goed)
Bvd.
Gewijzigd op 07/01/2016 12:35:05 door Maarten van Rijssel
Overigens: de kolomnaam "DATE" suggereert dat het om datums gaat.
050116 lijkt echter niet een datum te zijn.
Maak daar eens ipv een varchar een kolom van het type DATE van....
Het gaat hier om de kolom DATA, niet DATE. Bovendien is 050116 05-01-16.
Ik probeerde alleen aan te geven dat er een kolomtype is voor veel verschillende soorten data.
Zo zet je getallen in een kolom van het type INT, of DECIMAL als het om een bedrag met centen gaat.
Strings zet je in VARCHAR, TEXT etc.
Datums gaan in DATE kolommen, of als er ook een tijd bij hoort in DATETIME.
Dus 2016-01-05
Want met 050116 is voor de database ongeveer net zo bruikbaar als "de vijfde dag van januari 2016"
Toevoeging op 07/01/2016 13:09:50:
Want probeer maar eens een query te maken die de data van alle maandagen van januari ophaalt.
WHERE DAYOFWEEK(datumkolom) = 2 AND MONTH(datumkolom) = 1
https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_dayofweek
Maar t werkt ieg dus je wordt hartelijk bedankt ;)
Gewijzigd op 07/01/2016 13:12:12 door Maarten van Rijssel
Het probleem is vaak, dat het nu inderdaad werkt, maar als je 30.000 records verder bent, komt iemand met een simpele vraag als "graag een filter op maand", of "alleen werkdagen" etc.
En dan heb je nu mogelijk 2 minuten meer werk, maar straks niet een dataset die je om moet bouwen en een heleboel query's om aan te passen.
(en ja, met date LIKE '__01___' vind je inderdaad ook je data, maar of dat nog snel is met tienduizenden records?)
Sorteren gaat al helemaal niet lukken, want '310116' is alfabetisch gezien groter dan '010216'
Dat is waar ja. Mss toch maar aanpassen