Iteam
GitHub

Använd DESC som standardsortering

Ett tips till alla utvecklare är att sortera alla listor i fallande ordning som standard. Vanligtvis använder man standardsorteringsordningen (ASC) och det känns på något sätt rätt men det är enligt mig oftare intressant att se det största värdet i listor:

Följande exempel är man mest intresserad av att se sorterade i fallande ordning

  1. De flesta numeriska värdena – (t.ex. besök, tidinloggningar, saldo, ålder, timmar)
  2. Identitetsfält (id) – Senast är mer intressant än äldre
  3. Artiklar (datum) – Senast är mer intressant än äldre
  4. Ja/Nej fält (bool) – Ja är mer intressant än nej


Undantag:

  1. Alfabetiska listor vill man läsa från A-Ö (t ex Namn)
  2. Sortering på pris (Billigast är oftast det man är ute efter)

Ett bra tips för att optimera en databas är faktiskt att ändra defaultsorteringen på alla identity index från ASC till DESC för det är samma sak där – det är troligare att en ny användare loggar in än en äldre och då hittar SQL Server snabbare upp den användaren om indexvärdet är sorterat i omvänd ordning.

Observera att jag inte menar att alltid vill sortera fallande men kan man låta användaren byta så är det oftare mer rätt att sortera listor i omvänd ordning som standard.

Jag tar gärna emot kommentarer om detta – det finns säkert många fler undantag ? ;)

Christian Landgren
2010-05-05