ik heb een bezoekersteller, als er iemand op een bepaalde pagina komt dan word de datum/tijd naar de database gestuurd.
zoals dit
id datum
1 12-03-1988 12:34
2 23-12-1999 08:45

dus de tijd en de datum zitten aan elkaar geplakt.
was achteraf gezien niet zo slim maar ik heb al een hele grote database dus ik wou het graag zo houden.
maar goed ik wil dus weten hoevele bezoekers er per dag geweest zijn.
zodat je zoiets krijgt
Bezoekers deze maand:
1: 34 bezoekers
2: 43 bezoekers

en ga zo maar door. dat wil ik dus in een array hebben, ivm nog andere scripts e.t.c. hoe kan ik nou dat uit de database lezen en in een array proppen.
dit had ik al:
$datay = SELECT COUNT(*) FROM alles GROUP BY datum;
maar dit gaat natuurlijk niet werken omdat dit sorteert op datum maar ook meteen op de minuten/uren dus.
plus dit weergeeft het niet in een array.
hoe kan dit?
bedankt!
Welk veldtype is het?
Bedoel je varchar enzo?
tis gwoon een varchar van 255 tekens max maar hij haalt de datum via date() op t moment dat de gebruiker de site bekijkt.
Jah maar daar heb je dan niets meer aan.
Een timestamp, een timestamp in de vorm van een int, een datatime, zulke dingen kun je gemakkelijk ordenen, varchars met datums erin niet.

dus de tijd en de datum zitten aan elkaar geplakt.
was achteraf gezien niet zo slim maar ik heb al een hele grote database dus ik wou het graag zo houden.

Wat is groot?
Groot? groter aantal als jouw posts op dit forum, maar goed ja ik kan er nu weinig aan veranderen en dat mot toch vast wel lukken met wat ik nu heb? niet dan?
Nou? help me alsjeblieft... help...
Ten eerste: Die query die je gaf wordt wel weergegeven in een array, al dan niet met een cijfer. waarschijnlijk $array[0] of $array[1].

Dit kun je oplossen door een pseudoniem te gebruiken: SELECT COUNT(*) AS number FROM alles GROUP BY datum;

Verder, als je wilt laten sorteren op maand zul je bij de datum het veldtype DATE moeten gebruiken lijkt me. en dan een query als

SELECT MONTH(date), COUNT(*) AS number FROM alles GROUP BY datum ORDER BY datum DESC;
Jah maar dat heeft en wil ie dus niet ...
Probleem dus, zoals ik al zei.
Huh??
als je nou de array met resultaten heb, kan je daar dan niet een selectie uit maken nadat je er een substr() op los gelaten heb? (brainstorm idee...)
Misschien kan je het doen met de SUBSTRING-functie van SQL. Ik ga er maar even vanuit dat je MySQL gebruikt.
http://dev.mysql.com/doc/mysql/en/String_functions.html

Ik denk dat je query dan zoiets wordt:

SELECT SUBSTRING(datum,4,2) AS maand, COUNT(*)
FROM alles
GROUP BY SUBSTRING(datum,4,2)


Niet getest...

Elwin

[Edit: Typo]

Reageren