/ Forside/ Teknologi / Udvikling / SQL / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Træls sortering
Fra : vildmeddans
Vist : 371 gange
75 point
Dato : 01-07-05 11:36

Jeg sidder og skal lave en sortering i MySQL, som driller mig rimeligt meget nu.

Desværre kan jeg ikke vise systemet, da det kører på en intern server.

Men jeg må prøve at forklare problemstillingen som godt som muligt.

Vi har en sag med 3 forskellige deadlines undervejs. Disse er datoer og kan enten være NULL eller udfyldt. Derudover har vi 3 datofelter til samme deadlines, som viser hvornår punktet blev udført. Disse kan igen også være NULL eller udfyldt.

Men for letheds skyld kan jeg godt nøjes med en virker sortering på bare en deadline, de er næsten ens, så jeg kan selv ændre de andre.

Nu skal jeg så have lavet en sortering her der gør følgende:

Øverst skal de sager hvor kun deadline er udfyldt være, og det skal være stigende, så dem som er tættest eller har overskredet deadline ligger øverst. Nederst selvfølgelig dem hvor der er meget god tid til deadline.

Derefter skal jg have de sager hvor både deadline og udførelsen af denne er udfyldt. Igen stigende så dem tættest/overskredet på deadline ligger øverst.

Til sidste de sager, som endnu ikke har fået udfyldt en deadline.

Felterne har følgende navne:

deadline -> o5.r530b
deadline udført -> o5.r542a

Jeg er selv kommet frem til nedenstående if-sætning, men den sortere således, at sager under deadline, kommer før sager hvor deadline er udført, men ellers virker den.

IF(((TO_DAYS(o5.r530b) - TO_DAYS(o5.r542a)) IS NOT NULL || (TO_DAYS( o5.r530b ) - TO_DAYS(NOW())) IS NULL),1,0), date530b ASC

 
 
Du har følgende muligheder
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
Søg
Reklame
Statistik
Spørgsmål : 177434
Tips : 31962
Nyheder : 719565
Indlæg : 6407984
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste