Top n procent top n%
Mam następujący kod.
SQL> select * from student_gpa;
SSN GPA
--------------- ----------
22222 3
11111 4
55555 3
33333 4
44444 3
Mam tę funkcję, aby uzyskać dwa najwyższe wiersze wyników gpa.
SQL> select * from (wybierz ssn, gpa z zamówienia student_gpa przez gpa desc), gdzie rownum <= 2;
SSN GPA
--------------- ----------
11111 4
33333 4
Moje pytanie brzmi: jakiej funkcji używam, aby uzyskać najwyższy n% wyniku GPA. Na przykład, ponieważ mam dwie osoby z GPA równym 4, gęsta ranga zwróci 11111 zajmując rząd 1 i 22222 zajmując rząd 2. Szukałem funkcji, która mówi, że oblicza 5% wyniku GPA, a zwracana wartość to zarówno 11111, jak i 22222. Funkcja 5% NIE POWINNA zwracać tylko 11111. Nawet jeśli miałbym więcej wpisów, które miały gpa równą 4, funkcja 5% nadal zwracałaby wszystkie wiersze, które miały gpa z 4.Thanks