Ima vise resenja na zadatu temu, ovo moze biti jedno od onih koje se brze izvrsavaju na vecem setu podataka:
Code:
SELECT Ucenik.Ime, (CASE WHEN ISNULL(BrojJedinica, 0) = 0 THEN CAST(ProsOcena AS nvarchar(10)) ELSE 'Pao zbog ' + CAST(BrojJedinica AS nvarchar(10)) + ' jedinica' END) AS ProsecnaOcena
FROM Ucenik
LEFT JOIN (SELECT AVG(OcenaValue) AS ProsOcena, UcenikID FROM Ocena GROUP BY UcenikID) AS Prosek ON Ucenik.UcenikID = Prosek.UcenikID
LEFT JOIN (SELECT COUNT(*) AS BrojJedinica, UcenikID FROM Ocena WHERE OcenaValue = 1 GROUP BY UcenikID) AS Padachi ON Ucenik.UcenikID = Padachi.UcenikID
To ti je to, nisam probao pa izvini ako ima neka greska, mislim da je bitna ideja. Naravno, ovde sam pretpostavio puno stvari, jer nam nisi specificirao kako se zovu tabele i polja "u igri".