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.
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
Synes godt om
Ny brugerNybegynder
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.