Я новичок в SQL и учился в основном с помощью YouTube, Google и некоторых онлайн-задач. Я пытаюсь выяснить, как лучше всего выполнить простую задачу, чтобы определить, какой процент «голов» был забит на одной стороне футбольного поля. Я не уверен, что это лучший подход, но попытался выполнить подзапрос и не могу понять, как заставить это работать с этим. Как я уже сказал, он все еще новичок и очень хочет изучить новый метод.
Следующий метод, который я пытался использовать. Подсчитав общее количество голов (исключая голов от центральной линии), затем во второй части разделив его на это число и умножив на 100, чтобы получить процент от этой половины.
DECLARE
l_goal NUMBER(3);
BEGIN
SELECT COUNT(y_axis) INTO l_goal
FROM soccer_stats
WHERE y_axis <> 0;
DBMS_OUTPUT.PUT_LINE (SELECT ROUND(COUNT(y_axis)/||l_goal)
FROM soccer_stats
WHERE y_axis < 0);
END;
Ниже была моя попытка при выполнении подзапроса.
SELECT COUNT(y_axis) FROM soccer_stats
WHERE y_axis <> 0
(SELECT ROUND(COUNT(y_axis)/6*100) FROM soccer_stats
WHERE y_axis < 0)
^-------- '6' was the goal number, but could find a way to automate.
Если бы вы могли помочь мне понять, где я ошибаюсь, я был бы очень признателен. Спасибо.