Avatar billede skovgaard3 Nybegynder
08. maj 2003 - 00:57 Der er 1 løsning

sql - sortering af datoer hvor årstal er uden betydning

Hej.
Hvordan kan man ud fra en tabel med bl.a. datoer i sortere indholdet efter datoen, hvor årstallet er uden betydning, nærmeste dato øverst og længst væk dato er nederst.

Det skal bruges i en tabel med fødselsdage i, hvor den der om kortest tid har fødselsdag, er øverst.
Svar bedes i sql.

Hilsen Claus.
Avatar billede skovgaard3 Nybegynder
08. maj 2003 - 01:40 #1
Fandt selv ud af det. Skal dog ikke afslå at der findes en nemmere løsning.
Her er brugt 7.maj som "skiller".

SELECT * FROM
  (SELECT navn, dato, id, MONTH(dato)*100+DAY(dato) AS sortkontrol
  FROM Dato WHERE MONTH(dato) >= 5 AND id NOT IN
  (SELECT id FROM Dato WHERE MONTH(dato) = 5 AND DAY(dato) < 9)
UNION
  SELECT navn, dato, id, MONTH(dato)*100+DAY(dato)+1200 AS sortkontrol
  FROM Dato WHERE MONTH(dato) <= 5 AND id NOT IN
  (SELECT id FROM Dato WHERE AND MONTH(dato) = 5 AND DAY(dato) > 9))
ORDER BY sortkontrol
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