/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
2 X Order By?
Fra : Belial


Dato : 04-02-04 18:39

Kan det på en eller anden måde lade sig gøre, at man sorterer efter to
forskellige databasefelter?

I det nuværende udtræk sorterer jeg efter dato, men vil også samtidig gerne
sortere efter måned, således at f.eks. 01., 02. og 07. januar bliver vist
før 02.04. og 06. februar. Jeg tænkte noget i retningen af:

sql = "SELECT * FROM table ORDER BY dato ORDER BY month"



 
 
Carsten Pedersen (04-02-2004)
Kommentar
Fra : Carsten Pedersen


Dato : 04-02-04 19:21

Hej, Belial

"Belial" <666_NOSPAM@esenet.dk> skrev i en meddelelse
news:40212e19$0$29330$edfadb0f@dread15.news.tele.dk...
> Kan det på en eller anden måde lade sig gøre, at man sorterer efter to
> forskellige databasefelter?
>
> I det nuværende udtræk sorterer jeg efter dato, men vil også samtidig
gerne
> sortere efter måned, således at f.eks. 01., 02. og 07. januar bliver vist
> før 02.04. og 06. februar. Jeg tænkte noget i retningen af:
>
> sql = "SELECT * FROM table ORDER BY dato ORDER BY month"

Der skal komma imellem felterne:

sql = "SELECT * FROM table ORDER BY dato, month"

Mvh

C@rsten



Jørn Andersen (04-02-2004)
Kommentar
Fra : Jørn Andersen


Dato : 04-02-04 19:24

On Wed, 4 Feb 2004 18:38:35 +0100, "Belial" <666_NOSPAM@esenet.dk>
wrote:

>Kan det på en eller anden måde lade sig gøre, at man sorterer efter to
>forskellige databasefelter?
>
>I det nuværende udtræk sorterer jeg efter dato, men vil også samtidig gerne
>sortere efter måned, således at f.eks. 01., 02. og 07. januar bliver vist
>før 02.04. og 06. februar. Jeg tænkte noget i retningen af:
>
>sql = "SELECT * FROM table ORDER BY dato ORDER BY month"

>sql = "SELECT * FROM table ORDER BY dato, month"

Du kan sortere stigende og faldende på hvert felt uafhængigt af
hinanden:
.... ORDER BY dato ASC, month DESC

Noget andet er at din datbasestruktur nok ikke er særligt optimal,
hvis du har dato og måned i hver sit felt.
Hvad med "år" i øvrigt - skal der ikke også sorteres på det?

Nu ved jeg ikke, hvilken database du bruger, men i de fleste findes
der en datatype, der typisk hedder noget i retning af "Dato/tid".
Hvis du bruger den, sparer du dig selv for en masse besvær på lænmgere
sigt.

Du får godt nok lidt besvær i starten, indtil du har lært de
faldgruber, der er med dato-håndtering på tværs af sprog-/landekoder
og platforme. Til gengæld får du adgang til dato-tid-funktioner i din
database, som du ellers ikke kan bruge.

Good luck!

--
Jørn Andersen,
Brønshøj

Jens Gyldenkærne Cla~ (04-02-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 04-02-04 22:04

Jørn Andersen skrev:

>sql = "SELECT * FROM table ORDER BY dato, month"

I nogle databasesystemer er month et reserveret ord (typisk navnet
på den funktion der trækker månedsnummeret ud af en dato). Hvis det
er tilfældet, skal man også escape feltnavnet - i Access/MSSQL
gøres det som her: [month]
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177549
Tips : 31968
Nyheder : 719565
Indlæg : 6408822
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste