Wyjęcie maksymalnej wartości z tabeli

Witam.
Nie potrafię sobie poradzić już drugi dzień z zapytaniem do bazy danych poprzez Rails. Mam taką tabelę w Railsach

 ______________________________________________________________________
 |  id   | compid | projectid  |  playerid   | result1  |  result1ok  |
 ---------------------------------------------------------------------|
 | 1          1           2             2       110            t      |
 | 2          1           2             45     105             f      |
 _____________________________________________________________________|

Potrzebuję wyciągnąć z tej tablicy trzy playerid, z najwyzsza wartoscia result dla kazdej compid, ale gdy ta wartosc jest true(bierz pod uwagę result1 gdy result1=true, itd). Tych resultn resultnok mam dziesięć.
Wynik

  |  id  | playerid | compid |
  |   1  |      3   |  3     |

Trochę zagmatwałem, ale myślę, że da radę zrozumieć. Pozdrawiam serdecznie i dziękuję za pomoc

struktura danych nie jest przemyślana i Railsy nie pomogą Ci zbudować takiego zapytania. W czystym SQLu to też nie jest banalnie proste, więc najlepszą rzeczą jaką możesz zrobić jest (mniej lub bardziej) sensowne zaprojektowanie bazy.

Z ciekawości spróbowałem zrobić to czego potrzebujesz (jeżeli dobrze zrozumiałem) na opisanych danych, tutaj jest wynik:

http://sqlfiddle.com/#!15/5a608/1

(edit: uwzględnienie NULLi w results)

Dziękuję za odpowiedź. W takim razie jak lepiej stworzyć taką tabelę jako rada na przyszłość? Mógłbyś podać jakiś przykład, lub nakierować odpowiednio do rozwiązania takiego problemu ?