Brug et inline view: select * from (select * from download order by download) where rownum <=10; forudsat at din tabel hedder download og kolonnen du bil lave top 10 over hedder download.
WEBBE : har du prøvet at teste det der? I oracle baseres rowid på den rækkefølgen rækkerne selecteres ud.. ergo hvis du ikke først får sorteret dine rækker efter den kolonne som du vil lave din topN over så vil du kun få fat i de først 9 rækker i tabellen. Det giver dig derfor ikke en topN på indholdet af kolonnerne men i stedet kun en liste overde første 10 rækker. Det er derfor en alm. select med rownum i where ikke virker men at du i stedet skal bruge et inline view. Det inline view indeholder et resultatsæt som du selecter fra og du kan derfor være sikker på at dine data er sorteret i rigtig rækkefølge før du sætter where clausen med rownum ind. Prøv at teste det!
prøv at lave en number kolonne med tal i forskellig størrelses orden og hent rowid med ud.. så vil du bemærke at der blot cuttes af fra række 10 uanset tallet i din number kolonne..
Dope>> Nope, er lige her.. meeen du ved jo hvordan du kan få fat i mig..
Synes godt om
Ny brugerNybegynder
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.