1. SELECT YEAR(e.data) as "Rok", p.`nazwa-p` as "Nazwa przedmiotu", COUNT(DISTINCT e.`id-student`) as "Ilosc zdanych egzaminow" from egzaminy e JOIN przedmioty p ON p.`id-przedmiot`=e.`id-przedmiot` WHERE p.`nazwa-p` LIKE "Arkusze kalkulacyjne" AND e.zdal="y" GROUP BY YEAR(e.data) HAVING COUNT(e.`id-student`)=(SELECT COUNT(DISTINCT e.`id-student`) from egzaminy e JOIN przedmioty p ON p.`id-przedmiot`=e.`id-przedmiot` WHERE p.`nazwa-p` LIKE "Arkusze kalkulacyjne" AND e.zdal="y" GROUP BY YEAR(e.data) ORDER BY 1 ASC LIMIT 1) ORDER BY YEAR(e.data) 3. SELECT DISTINCT p.`id-przedmiot` AS "ID przedmiotu", p.`nazwa-p` AS "Nazwa przedmiotu", w.`id-wykladowcy` as "ID Wykładowcy", CONCAT(w.nazwisko," ", w.imie) AS "Nazwisko i imię wykładowcy", e.data AS "Data ostatniego egzaminu" FROM egzaminy e JOIN przedmioty p ON p.`id-przedmiot`=e.`id-przedmiot` JOIN wykladowcy w ON w.`id-wykladowcy`=e.`id-wykladowca` WHERE e.data=(SELECT data from egzaminy WHERE `id-przedmiot`=e.`id-przedmiot` ORDER BY data DESC LIMIT 1)