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

questionAnswers(4)

yourAnswerToTheQuestion