Avatar billede leif Seniormester
14. april 2007 - 14:15 Der er 21 kommentarer og
1 løsning

Tæl hvor mange der er pr. dag

Hej,

Hvis jeg i min MySQL tabel har: 2006-07-27 15:45:15 og gerne vil have en liste som viser mig:
2006-07-27 = 10 stk.
2006-07-28 = 1 stk.
2006-07-29 = 5 stk.
2006-07-30 = 0 stk.
2006-07-31 = 50 stk.
osv.

Hvordan ville du så lave det ?


Samt hvis jeg fx. ville lave en liste med tid fx.:
00:00 til 01:00 = 100 stk.
01:00 til 02:00 = 50 stk.
osv.


Ser frem til noget insperation.

På forhånd tak

/Leif
Avatar billede thesurfer Nybegynder
14. april 2007 - 14:47 #1
Den første er vel nem nok.. brug " Order By FeltNavn" i din SQL, hvor "FeltNavn" er navnet på din kolonnen i tabelle, der indeholder dato/tid feltet..
Avatar billede leif Seniormester
14. april 2007 - 14:50 #2
Øhh ? Hvad skulle jeg få ud af det ?

I databasen har jeg:
2006-07-27 15:45:15
2006-07-27 15:46:15
2006-07-27 15:55:15
2006-07-28 14:45:15
2006-07-28 16:39:15
osv.
Avatar billede morhan Novice
14. april 2007 - 14:52 #3
1)
select date(dato) as dato2, count(*) as antal from dates group by dato2;

2)
select
date(dato) as dato2,
concat(hour(dato), ':00 til ', hour(dato)+1, ':00') as time,
count(*) as antal
from dates group by str_to_date(concat(date(dato),'-', hour(dato)), '%Y-%m-%d-%H') order by dato;
Avatar billede thesurfer Nybegynder
14. april 2007 - 14:52 #4
Ahh.. sorry..
Jeg mener at det er "Group By FeltNavn" og ikke "Order"... prøv det.. :)
Avatar billede thesurfer Nybegynder
14. april 2007 - 14:54 #5
Ahh.. nu hvor jeg har set morhans forslag, kommer jeg i tanke om antallet.. :-)

Glem mine indlæg.. :-)
Avatar billede leif Seniormester
14. april 2007 - 15:01 #6
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(dato) as dato2, count(*) as antal from log group by d


Den ser:
$sql = 'select date(dato) as dato2, count(*) as antal from log group by dato2';
Avatar billede thesurfer Nybegynder
14. april 2007 - 15:05 #7
Jeg tror at morhan er gået ud fra disse navne er navnene på din tabel og kolonne i databsen:

tabel: dates
kolonne: dato
Avatar billede leif Seniormester
14. april 2007 - 15:15 #8
Ja, og mit felt hedder dato og jeg har ændret dates til log
Avatar billede thesurfer Nybegynder
14. april 2007 - 15:17 #9
Får du samme fejl?
Avatar billede leif Seniormester
14. april 2007 - 15:19 #10
Ja
Avatar billede thesurfer Nybegynder
14. april 2007 - 15:21 #11
Er feltet "dato" af typen "dato" eller bare en streng?
Avatar billede morhan Novice
14. april 2007 - 15:22 #12
hvilken version har du af mysql?
Avatar billede leif Seniormester
14. april 2007 - 15:23 #13
datetime
Avatar billede leif Seniormester
14. april 2007 - 15:23 #14
4.0.24
Avatar billede morhan Novice
14. april 2007 - 15:24 #15
Avatar billede thesurfer Nybegynder
14. april 2007 - 15:26 #16
morhan> Nogen forslag til en løsning på date-4.0.24-problemet?
Eller skal leif installere 4.1.1?
Avatar billede leif Seniormester
14. april 2007 - 15:29 #17
Jep og jeg får ikke 4.1.1 eller nyere lige nu !
Avatar billede morhan Novice
14. april 2007 - 15:36 #18
select date_format(dato, '%Y-%m-%d') as dato2, count(*) as antal from dates group by dato2;

burde virke
Avatar billede morhan Novice
14. april 2007 - 15:41 #19
i 2eren kan du gruppere efter

date_format(dato, '%Y-%m-%d-%H')

i stedet for
Avatar billede leif Seniormester
14. april 2007 - 16:29 #20
morhan -> Smid et svar du er en Guttermand !
Avatar billede morhan Novice
15. april 2007 - 05:29 #21
ok
Avatar billede leif Seniormester
15. april 2007 - 10:01 #22
Takker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester