webForumDet fria alternativet

Sortera efter ålder

4 svar · 473 visningar · startad av pellesvenne

pellesvenneMedlem sedan jan. 2002227 inlägg
#1

Hejsan!
Hur kan man sortera en onlinelista efter en jämn ålder..
ex: jag är 20 år, de som är lika gamla som mig skall synas först och sedan ska de yngre synas längre ner..

värde = 19870612

SQL = select * from medlemmar where status = 1 order by ??????

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Var skall de äldre hamna i sorteringen?

pellesvenneMedlem sedan jan. 2002227 inlägg
#3

de som är äldre ska hamna under mig : tex
kan man göra så att 2 år äldre syns först och de som är över 2 år yngre syns längst ner:
tex:

22
22
21
20
20
20 (Jag)
19
19
18
18
18
25
25
24
24

CatZMedlem sedan jan. 20022 440 inlägg
#4

Det är inte riktigt så enkelt, du får nog skapa en stored procedure med sub queries för att åstadkomma det. Eller kanske en view.

Kanske går att hämta allihop till en lista och sedan köra logiken i php/asp/aspx också iofs men det känns som något som skulle göra din applikation väldigt mycket långsammare.

Om du väljer att lösa det i databashanteraren så får du först hämta din ålder, sedan de i samma ålder, sedan de yngre osv. Har jag förstått vad du försöker åstadkomma?

LarsGMedlem sedan dec. 200012 464 inlägg
#5
order by 
   case when age between 18 and 22 then age else 1 end desc,age desc

ersätt age med dbmsspecifikt uttryck för att beräkna antal år mellan två datum

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