Мне нужно выяснить AVG и MAX столбца, отобразить результаты в двух столбцах, а затем отфильтровать каждую строку по разнице в 20 и более AVG и MAX.
Мой кодв настоящее время делает большую часть этого, единственное, что мне нужно выяснить, это окончательная фильтрация.
Это мой код:
SELECT b.BOWLERFIRSTNAME || ' ' || b.BOWLERLASTNAME "Bowler
Name", TO_CHAR(AVG(bs.RAWSCORE), '999') "Current Average",
MAX(bs.RAWSCORE)"High Score"
FROM BOWLERS b
JOIN BOWLER_SCORES bs USING (BOWLERID)
WHERE bs.RAWSCORE = (SELECT MAX(bs.RAWSCORE)
FROM BOWLER_SCORES
GROUP BY bs.RAWSCORE)
GROUP BY b.BOWLERFIRSTNAME, b.BOWLERLASTNAME
ORDER BY b.BOWLERFIRSTNAME ASC;
Это то, что я получаю в качестве вывода:
Мой код генерирует правильное количество в каждом столбце для каждого игрока, но я не могу понять, как отфильтровать запрос, чтобы исключить любого игрока, который«Наивысший балл» не более чем на 20 баллов выше среднего.
Вот моя цель:
Я оченьновичок в SQL, поэтому любые дополнительные указатели или советы, которые вы можете иметь, будут оценены!