Avatar billede plato Juniormester
13. juni 2006 - 11:08 Der er 14 kommentarer og
1 løsning

Order by date virker ikke 100%

Hejsa NG.

Jeg bruger følgende linie til at sortere med:
strSQL = "SELECT * FROM commentsanmeld ORDER BY nyhedid ASC, [date] DESC"

Det virker som sådan også fint nok. Bortset fra at i tabellen står der eks.
07-06-2006 12:11:05
og
01-06-2006 12:13:47

Hvorfor kan jeg ikke få den til at sortere dem sådan her:
01-06-2006 12:13:47
og
07-06-2006 12:11:05

'nyhedid' er det samme for dem begge. Så den kan jeg ikke benytte.
Avatar billede nva Praktikant
13. juni 2006 - 11:17 #1
Måske misforstår jeg spørgsmålet, men du skriver jo DESC og ikke ASC ved datoen, så det er vel rimeligt at du får dem i faldende orden eller hva?
Avatar billede plato Juniormester
13. juni 2006 - 11:21 #2
Nej, fordi hvis jeg tager alle med under nyhedid ser det sådan ud:

01-06-2006 12:13:47
07-06-2006 12:11:05
19-05-2006 12:51:33
20-05-2006 14:01:29
20-05-2006 20:40:20
23-05-2006 13:43:22
25-05-2006 12:06:10

Og det dur jo ikke.
Avatar billede plato Juniormester
13. juni 2006 - 11:22 #3
nyhedid er 121 for dem alle. Så at sortere efter nyhedid er egentlig kun for at sortere de forskellige kommentarer til et givent id i rækkefølge. Men indefor dette id vil jeg jo også gerne den skal sortere.
Avatar billede nielle Nybegynder
13. juni 2006 - 11:35 #4
Men som nya spørger til; Løser det ikke dit problem at ændre:

strSQL = "SELECT * FROM commentsanmeld ORDER BY nyhedid ASC, [date] DESC"

- til:

strSQL = "SELECT * FROM commentsanmeld ORDER BY nyhedid ASC, [date] ASC"
Avatar billede plato Juniormester
13. juni 2006 - 11:43 #5
Nej, for så ser det sådan ud:

25-05-2006 12:06:10
23-05-2006 13:43:22
20-05-2006 20:40:20
20-05-2006 14:01:29
19-05-2006 12:51:33
07-06-2006 12:11:05
01-06-2006 12:13:47
Avatar billede plato Juniormester
13. juni 2006 - 11:45 #6
Uanset hvad jeg gør kommer 07-06-2006 12:11:05 i forkert rækkefølge i forhold til 01-06-2006 12:13:47.
Avatar billede nva Praktikant
13. juni 2006 - 11:50 #7
Det ser ud som om du så er nødt til at substringe dig gennem år, måned, dag osv - og så sortere på dem.
Avatar billede nielle Nybegynder
13. juni 2006 - 11:50 #8
Måske?

strSQL = "SELECT * FROM commentsanmeld ORDER BY [date] ASC, nyhedid ASC"
Avatar billede nielle Nybegynder
13. juni 2006 - 11:53 #9
Hvordan er dit date-felt defineret i databasen? Er det en varchar, eller er det een date-type?
Avatar billede plato Juniormester
13. juni 2006 - 11:55 #10
nielle.
Desværre.. Den sætter stadig 07-06-2006 før 01-06-2006
Avatar billede plato Juniormester
13. juni 2006 - 11:55 #11
nielle.
date-feltet er et text-felt.
Avatar billede nielle Nybegynder
13. juni 2006 - 11:58 #12
Så vil jeg starte med at forslå at du laver det om til et rigtigt datetime-felt. Så er der en hel masse af dine problemer som falder på plads helt af sig selv.
Avatar billede plato Juniormester
13. juni 2006 - 11:59 #13
Oki. Det vil jeg prøve.
Avatar billede plato Juniormester
13. juni 2006 - 12:28 #14
nielle.

Smid et svar. Måtte lave database-feltet om til dato-format. Det løste alt! :)
Avatar billede nielle Nybegynder
13. juni 2006 - 12:35 #15
Svar :^)
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
Kurser inden for grundlæggende programmering

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