Avatar billede jakobverner Nybegynder
24. maj 2005 - 11:26 Der er 6 kommentarer og
1 løsning

Sortering efter dato

Jeg har denne her SQL-kommando.

SELECT Format(Tidspunkt,'Short Date') AS Dato, MIN(temp) AS MinimumTemp, MAX(temp) AS MaximumTemp, Avg(temptabel.Temp) AS GennemsnitsTemp
FROM temptabel
GROUP BY Format(Tidspunkt,'Short Date')
ORDER BY Format(Tidspunkt,'Short Date');

Kommandoen vælger lige præcis det den skal i databasen, men af en eller anden grund så sorteres den hentede data kun efter dagen i datoen, således:

Dato:
02-05-2003
03-06-2005
04-11-1999

Jeg vil selvfølgelig gerne have sorteret dataen efter hele datoen, således:

Dato:
03-06-2005
02-05-2003
04-11-1999

Hvordan gør jeg det?
Avatar billede jkrons Professor
24. maj 2005 - 11:29 #1
Du vælger at formatere din dato - men hvilken datatype har du den i? Hvis den ikke ligger i datoformat i forvejen er Access lige gald med, hvordan du formaterer den, da den sorterer på værdien, ikke på formatet.
24. maj 2005 - 11:30 #2
Det skyldes, at format konvertere datoen til Tekst.

Prøv at bruge denne sortering i stedet:

ORDER BY Tidspunkt
Avatar billede kalp Novice
24. maj 2005 - 11:33 #3
man kan vel ikke sortere efter tidspunkt... eller resultatet bliver ikke det samme som order by dato.
Avatar billede jakobverner Nybegynder
24. maj 2005 - 11:38 #4
Grunden til jeg formaterer er at tidspunkt ligger i databasen med både dato og tid, og jeg skal kun bruge dato-delen.
Avatar billede jakobverner Nybegynder
24. maj 2005 - 11:43 #5
Hvis jeg bruger thomasjepsen's forslag så for jeg både dato og tid med, og skal kun hente og sorterer efter dato-delen.
Avatar billede jakobverner Nybegynder
24. maj 2005 - 11:53 #6
hmm, uden jeg forstår hvordan så virker denne her løsning!

SELECT Format(Tidspunkt,"dd-mm-yyyy") AS Dato, Avg(temptabel.Temp) AS GennemsnitsTemp
FROM temptabel
GROUP BY Format(Tidspunkt,"dd-mm-yyyy"), Format(Tidspunkt,"yyyy-mm-dd")
ORDER BY Format(Tidspunkt,"yyyy-mm-dd");
24. maj 2005 - 12:01 #7
ja, yyyy-mm-dd vil altid virke! Uanset om det er tekst- eller dato-format.

Du kunne måske også have bruge denne alle steder:

cvdate(Format(Tidspunkt,'Short Date'))

Den konverterer teksten tilbage til datoformat.
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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