Avatar billede appel Novice
05. juli 2001 - 21:55 Der er 26 kommentarer og
1 løsning

sortering efter dato i mysql/php

Jeg vil gerne have sorteret min tabel efter mit felt dato som har følgende format \"ddmmåå\", hvorledes gøres dette på en smart måde? (ORDER BY dato går ikke da dage så prioriteres højere end måneder og år)
Avatar billede htx98i17 Professor
05. juli 2001 - 21:58 #1
prøv at tilføj enten ASC eller DESC

ORDER BY dato ASC
ORDER BY dato DESC
Avatar billede appel Novice
05. juli 2001 - 22:02 #2
det vil ikke virke du stadig har problemet med at dage vægtes højere end måneder og år
Avatar billede appel Novice
05. juli 2001 - 22:04 #3
fx hvis du vil have den nyeste dato først på følgende tre datoer: \"120601, 100501, 110701\" så ser du problemet
Avatar billede gizmo-gizmo Nybegynder
05. juli 2001 - 22:06 #4
hvis du vil sortere efter nyeste så kan du jo bare bruge order by id desc...


...htx >> har du ik tænkt dig at svare mig mere, eller?
Avatar billede appel Novice
05. juli 2001 - 22:07 #5
tjek eksemplet fra min anden kommentar
Avatar billede gizmo-gizmo Nybegynder
05. juli 2001 - 22:08 #6
ja, har jeg gjort, så kan man ik, det kan jeg godt se :(
Avatar billede darkmoon Nybegynder
05. juli 2001 - 23:20 #7
lav dit dato format om, brug den rigtige sql dato format: YYYY-MM-DD

du kan altid vende tingene om i php el. lign hvis det skal printes på dansk...
Avatar billede appel Novice
05. juli 2001 - 23:48 #8
jeg syntes bare det bliver meget besværligt når jeg skal printe det ud i formatet ddmmyy
Avatar billede appel Novice
05. juli 2001 - 23:48 #9
medmindre du har en smart måde at gøre det på?
Avatar billede darkmoon Nybegynder
06. juli 2001 - 00:00 #10
if (ereg(\"^([0-9]+)(-)([0-9]+)(-)([0-9]+)$\",$datoframysql,$a)) {
              $datooversat = \"$a[5]\".\"$a[3]\".\"$a[1]\";
              } else {}
Avatar billede appel Novice
06. juli 2001 - 00:03 #11
kan du kort forklare mig hvad der sker?
Avatar billede darkmoon Nybegynder
06. juli 2001 - 00:06 #12
din dato fra mysql bliver via en regular expression splittet op og sat sammen igen som du vil ha det. I dette tilfælde sådan:

2001-07-19 bliver til 19072001
Avatar billede appel Novice
06. juli 2001 - 00:08 #13
jeps jeg læste også lige om det på php.net og det ser jo ganske smart ud. Jeg tror sgu heller ikke der er så meget andet at gøre, så du får pointene, mange tak.
Avatar billede codebase Praktikant
06. juli 2001 - 00:08 #14
Det er rigtigt hvad darkmoon skriver, vedr dit dato format!

Hvis du nu gemmer din dato som YYYYMMDD og ikke som nu DDMMYY.

Så vil den nyeste dato være det største tal.

Eks. 20010704 er større en 20010101, og der ved kan du lave en ORDER BY DATO.
default retuneres de som DESC, men kan hentes omvent via ASC.


Det er generalt, en god ide at gemme datoen i denne format, eller får man disse problemer :)

Hvis du benytter et TIMESTAMP14 direkte i mysql, ligger det også med År måned, dag, timer ,min og sec. Derved kan du ligledes order by dato :)

_codeb@se.
Avatar billede erikjacobsen Ekspert
06. juli 2001 - 00:43 #15
Man kan da sagtens, i ren MySql, sortere efter et felt på formen ddmmåå - hvis ellers
der er nogen det har lyst til at se hvordan ... !
Avatar billede codebase Praktikant
06. juli 2001 - 00:51 #16
ja, men er det ikke en meget indviklet SQL, når man kan gemme det \'rigtigt\' fra starten ??


Men jeg ville da\' meget gerne se dit bud på sagen :)

_codeb@se.
Avatar billede wizprod.com Nybegynder
06. juli 2001 - 01:21 #17
Også her!
Avatar billede htx98i17 Professor
06. juli 2001 - 08:56 #18
me 2!
Avatar billede gizmo-gizmo Nybegynder
06. juli 2001 - 09:32 #19
mig oz ... står tit og mangler det
Avatar billede appel Novice
06. juli 2001 - 10:47 #20
ja det ville jeg egentlig også...
Avatar billede wizprod.com Nybegynder
08. juli 2001 - 10:10 #21
Hmmmmm så du ville have flere points, Erik?? Troede ikke du ville have points *GGG*
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 10:31 #22
Næh, points er ligemeget - men man er nødt til \"ofre\" nogen for at vise man
er interesseret. Om jeg så får pointene er ret ligegyldigt :)
Avatar billede wizprod.com Nybegynder
08. juli 2001 - 10:43 #23
ofre nogen? *tager ægtvedpigen og giver den til Erik!*
Avatar billede gizmo-gizmo Nybegynder
08. juli 2001 - 11:20 #24
er der nogen der vil være med til at splejse om nogle points til erik? *G*
Avatar billede erikjacobsen Ekspert
08. juli 2001 - 11:24 #25
Men I kan spare på de dyrebare point ved at finde det spørgsmål på eksperten,
hvor jeg viser hvordan :=)
Avatar billede wizprod.com Nybegynder
08. juli 2001 - 12:01 #26
Hmmmmmm kigger lige erik besvarelser! ARRRRGHHHHH!!! Der er jo mange tusind!
Avatar billede gizmo-gizmo Nybegynder
08. juli 2001 - 12:04 #27
WiZ >> *G* ja, eksperten har i hvert fald ikke lavet det overskueligt at kigge det igennem :)
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