Witam,
Borykam się z następującym problemem. Chce wyświetlić listę pracowników danej firmy z jednoczesnym podaniem najwyższego zajmowanego przez nich stanowiska sortując listę w kolejności od najwyższego stanowiska do najniższego. Pracowników mam w jednej tabeli, przyporządkowanie do stanowisk w drugiej. Jeden pracownik może zajmować kilka stanowisk, a każde ze stanowisk ma przypisaną sobie wagę, która ustawia je w hierarchii.
Mam następujący kod:
SELECT e.ID, e.imie, e.nazwisko, e.email, e.nrTel,
es.name AS stanowisko
FROM pracownicy AS e
LEFT JOIN przyporzadkowanie AS esl ON esl.empID = e.ID
LEFT JOIN stanowiska AS es ON es.ID = esl.standID
GROUP BY e.ID
ORDER BY es.lvl DESC, nazwisko ASC
Lista wyświetla się prawidłowo, tzn. wybierani są wszyscy pracownicy, którzy wyświetlani są w prawidłowej kolejności. Niestety nie wiem jak ugryźć sprawę wybierania najwyższego stanowiska danego pracownika. Wybierane przez silnik jest jedno, lecz niestety nie zawsze to najwyższe (podejrzewam, że brane jest pierwsze natrafione tzn. to z najniższym ID). Gdzie tu wcisnąć funkcję wybierającą najwyższe z zajmowanym stanowisk?