Avatar billede Slettet bruger
09. april 2002 - 01:07 Der er 18 kommentarer og
1 løsning

count ad dato

jeg har i min db et dato felt med formatet yyyy-mm-dd hh:mm:ss

Jeg skal lave et sql kald er tæller antalet af poster for hver enkelt dato.

problemet nu er at den tæller hver dato der også er forskellig på tidspunktet.

Kan man ikke konvertere dato formatet til yyyy-mm-dd når man lave optællingen
Avatar billede Slettet bruger
09. april 2002 - 01:08 #1
Nuværende kald :

Select Count(dato) As Antal, dato
From hairtools.dbo.fejlmelding
Where Rettet = 0
Group By dato
Order by dato Desc
Avatar billede Slettet bruger
09. april 2002 - 01:09 #2
exsempel på nuveærende resultat

1    2002-04-03 15:49:41.000
1    2002-03-18 16:51:15.000
1    2002-03-18 11:54:23.000
1    2002-03-13 11:14:06.000
1    2002-03-11 11:00:29.000
1    2002-03-07 15:14:11.000
Avatar billede Slettet bruger
09. april 2002 - 01:10 #3
skulle helt være

1    2002-04-03
2    2002-03-18
1    2002-03-13
1    2002-03-11
1    2002-03-07
Avatar billede Slettet bruger
09. april 2002 - 01:11 #4
select format(yyyy-mm-dd),count(*) as antal
Avatar billede Slettet bruger
09. april 2002 - 01:13 #5
med dette

Select format(yyyy-mm-dd), Count(dato) As Antal, dato
From hairtools.dbo.fejlmelding
Where Rettet = 0
Group By dato
Order by dato Desc

For jeg fejl
Avatar billede Slettet bruger
09. april 2002 - 01:15 #6
hvad så hvis din kode ser således ud
Select format(yyyy-mm-dd), Count(dato) As AntalFrom hairtools.dbo.fejlmelding
Where Rettet = 0
Group By dato
Order by dato Desc
Avatar billede Slettet bruger
09. april 2002 - 01:15 #7
undskyld (enter) efter antal
Avatar billede Slettet bruger
09. april 2002 - 01:16 #8
stadig fejl

'format' is not a recognized function name.
Avatar billede Slettet bruger
09. april 2002 - 01:16 #9
hvilken sql kører du med ?
Avatar billede Slettet bruger
09. april 2002 - 01:19 #10
hvis oracle eller access så prøv skriv
to_char(yyyy-mm-dd), Count(*) As Antal
osv.
Avatar billede Slettet bruger
09. april 2002 - 01:20 #11
det ved jeg faktisk ikke.

Lige nu har jeg adgang til databasen via et program der hedder SQL Query Analyser, hvor jeg kan lave alle sql kald og få dem listet.

Hvordan kan man finde ud af sin SQL version
Avatar billede Slettet bruger
09. april 2002 - 01:20 #12
skal ma ikke bruge en convert funktion eller et eller andet
Avatar billede Slettet bruger
09. april 2002 - 01:21 #13
kender du databasen ?
Avatar billede Slettet bruger
09. april 2002 - 01:28 #14
hvad tænker du på???
Avatar billede Slettet bruger
09. april 2002 - 01:29 #15
umiddelbart vil jeg mene at dit problem ligger ved "dato" du har til sidst i din select sætning
dato er "normalt" en talværdi der bliver der ændre sig hvert sekund derfor vil du "normalt" ikke have flere poster med samme dato'er
desværre er jeg ikke stærk i andre databaser end Oracle og Acces

/Kpt_Lasard
Avatar billede Slettet bruger
09. april 2002 - 01:30 #16
kan man ikke sætte hvilket datoformat der skal køres inde man åbner et sql kald
Avatar billede Slettet bruger
09. april 2002 - 01:33 #17
sikkert men jeg tror ikke det giver nogen forskel, idet dine data vil være de samme
Avatar billede Slettet bruger
09. april 2002 - 01:48 #18
hehe jeg er kommet frem til dette og det virker

Use hairtools

Select count(convert(datetime,convert(char(10),Dato,105))), convert(datetime,convert(char(10),Dato,105))
From hairtools.dbo.fejlmelding
Where Rettet = 0
Group By convert(datetime,convert(char(10),Dato,105))
Order By convert(datetime,convert(char(10),Dato,105)) Desc
Avatar billede Slettet bruger
09. april 2002 - 01:55 #19
tja, det siger mig ikke noget, så behold du dine point :(
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
Computerworld tilbyder specialiserede kurser i database-management

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