Avatar billede runzor Nybegynder
27. januar 2004 - 11:02 Der er 6 kommentarer og
1 løsning

tre dimensionelt array - sortering

så er det tid til lidt hjælp fra panellet...

jeg vil gerne hava sorteret mit tre dimensionelle array om turneringsranking så ledes. først efter vundende kampe og har flere samme antal vundende kampe skal den med de færreste tabte være øverst. dvs. at vundende kampe skal sorteres som i desc i en DB og tabte skal som asc i en DB. eks:

Navn    - vundende - tabte
Carsten -    2    -  4
Anne    -    5    -  1
Peter  -    4    -  2
Thomas  -    2    -  2

det ovenstående skulle gerne blive til:

Anne    -    5    -  1
Peter  -    4    -  2
Thomas  -    2    -  2
Carsten -    2    -  4

svar med at det kan let gemmes i en DB er ikke godt nok for det er mit alternativ, tror bare at performencetime er for lang...

på forhånd tak
Avatar billede nute Nybegynder
27. januar 2004 - 11:14 #1
sortering i DB er hurtigere end sortering i en ASP engine ... helt klart det bedste at sortere der nede hvis du har muligheden til det

men hvordan ser dine arrays ud ?

/nute
Avatar billede runzor Nybegynder
27. januar 2004 - 11:19 #2
jeg har en masse kampe i en DB som trækkes ud for at finde det totale antal vundende og tabte kampe. derefter kan de smides tilbage i db for at lave denne sortering og så trækkes ud igen.

men at trække ud lække ind og trække ud antager jeg tager længere end at trække ud og sortere, men tager jeg fejl?

mit array:
Navn    - vundende - tabte // denne linie er kun for at det giver mening for jer.
Carsten -    2    -  4
Anne    -    5    -  1
Peter  -    4    -  2
Thomas  -    2    -  2
Avatar billede nute Nybegynder
27. januar 2004 - 11:34 #3
det nemmeste er jo at sortere så tæt på data som overhovedet muligt. Hvis jeg forstår dig ret, så hiver du data ud for at beregne antal vunde og tabte kampe. Dét resultat du så får, smider du tilbage i en tabel. Dette resultat hiver du så ud igen for præsentation ... er dette korrekt ?

I så tilfælde, ville jeg ha foretaget alt i et SQL statement, så slipper du for at gå omkring en ASP side ... dette ville være hurtigere. Men med det forbehold at jeg ikke kender din db-struktur.

Men hvis du giver mig tabel-struktur på de(n) tabel(ler) det er snak om, så skal jeg se om jeg ikke kan komponere en lille SQL til dig.

/nute
Avatar billede runzor Nybegynder
27. januar 2004 - 12:41 #4
jeg har nok stillet spm'et som værende et tredimensionelt array der skal sorteres, men faktum er at når jeg en gang har summeret de ønskede data i et recordset så er det jo ganske simpelt bare at lae en ny forespørgsel på dette RS

takker dog for den hurtige hjælp

lukker her
Avatar billede nute Nybegynder
27. januar 2004 - 12:45 #5
hmm ... det er ikke særlig god vane at få nogen til at hjælpe dig med en løsning, og så snuppe alle points selv

/nute
Avatar billede runzor Nybegynder
27. januar 2004 - 17:31 #6
som svar på tiltale... jeg mener ikke du har hjulpet mig så derfor tager jeg dem... kunne ikke finde på at tage dem hvis jeg mente du havde gjort en forskel. jsom jeg skriver ser du at jeg har vendt hele problematikken forkert og derfor selv har fundet ud af det.
Avatar billede nute Nybegynder
27. januar 2004 - 17:47 #7
jeg tiltaler ikke ;-)

det kommer vel an på hvordan man tolker din posting @ 27/01-2004 12:41:02. Jeg tolker det som om du fandt ud af at du ville sortere resultatet ved en ny forespørgsel, noget jeg forslår @ 27/01-2004 11:34:20.

Principielt set, er jeg ligeglad med points .. det har jeg nok af. Jeg mener dog at når nogen har kommenteret din løsning, og de ikke skyder særlig langt udenom den løsning du ender op med, så fortjener de en lille "premie". i dette specifikke spørgsmål, kan jeg ikke se at jeg har været så langt væk fra din løsning, da jeg 2 gange "beder" dig om at sortere ved udtræk af basen. Du skriver jo selv at det var dette du endte op med som løsning.

- just my 2 cents -

/nute
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester