webForumDet fria alternativet

Sortering efter datum

2 svar · 289 visningar · startad av Skarre

SkarreMedlem sedan apr. 20012 427 inlägg
#1

Hur går man tillväga för att, i SQL Server, sortera ett resultat efter en smalldatetime-kolumn (stigande) och samtidigt se till att de rader vars datum är '' eller NULL hamnar sist? Om jag bara sorterar efter datumkolumnen rakt av så hamnar ju NULL-datumen högst upp. :l

Jag kan ju köra något liknande detta

SELECT WHEN fooDate IS NULL THEN DATEADD(yyyy,100,GETDATE()) ELSE fooDate END

Men det kanske finns en enklare och pålitligare lösning?

@ndersMedlem sedan juni 200032 969 inlägg
#2

Ett värde kan inte vara tom sträng i ett fält av datumtyp, så det räcker att kolla null.

SELECT * FROM tabellen ORDER BY CASE WHEN fooDate IS NULL THEN 1 ELSE 0 END, fooDate

mvh

SkarreMedlem sedan apr. 20012 427 inlägg
#3

Tack!

128 ms totalt · 3 externa anrop · v20260731065814-full.b943c234
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)