SELECT
MIN(q1.AvgProjCost)
FROM (SELECT
DeptNo,
AVG(projcost) as AvgProjCost
FROM projects, clinicians
WHERE clinicians.Clinicianno = projects.Clinicianno
GROUP BY DeptNo) q1
EDITED
Предположим, у меня есть следующие расходы на проект отдела
Department ProjectCost
1 15
1 15
1 15
2 16
2 16
3 17
3 17
4 18
Эти проектные затраты приведут к следующим средним значениям
Department Average
1 15
2 16
3 17
4 18
Минимальное среднее значение для каждого отдела остается тем же набором результатов.
отредактировано снова
Если вы действительно должны иметь минимальное среднее значение для каждого отдела, тогда это будет работать
SELECT
q1.Dept,
MIN(q1.AvgProjCost)
FROM (SELECT
DeptNo,
AVG(projcost) as AvgProjCost
FROM projects, clinicians
WHERE clinicians.Clinicianno = projects.Clinicianno
GROUP BY DeptNo) q1
GROUP BY q1.Dept
Однако вы скоро поймете, что этот набор результатов будет и всегда будет таким же, как
SELECT
DeptNo,
AVG(projcost) as AvgProjCost
FROM projects, clinicians
WHERE clinicians.Clinicianno = projects.Clinicianno
GROUP BY DeptNo
отредактировано еще раз
Для получения отдела с наименьшей средней стоимостью проекта
SELECT
q1.Dept,
q1.AvgProjCost
FROM (SELECT
DeptNo,
AVG(projcost) as AvgProjCost
FROM projects, clinicians
WHERE clinicians.Clinicianno = projects.Clinicianno
GROUP BY DeptNo) q1
WHERE rownum = 1
ORDER BY AvgProjCost DESC