Top.Mail.Ru
Ответы
Аватар пользователя
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Не работает код для запроса в SQL

Есть таблица Работник, в которой есть логический столбец(true/false): Признак увольнения.
Задание: Вычислить процентное содержание уволенных работников.
Вот мой код:
SELECT [Признак увольнения],
(
(SELECT [Признак увольнения], Count([Признак увольнения]) FROM Работник WHERE [Признак увольнения]=True)
/
(SELECT [Признак увольнения], Count([Признак увольнения])) FROM Работник)
) AS Доля
FROM Работник
GROUP BY [Признак увольнения]

Но он вообще не работает.
Я не шарю за синтаксис sql полностью, но кажется мне, что вложенные запросы только с оператором WHERE.
Но как мне тогда выполнить задание, не создавая две дополнительные таблицы(запроса), где я буду вычислять общее количество уволенных работников и вообще количество работников.
Помогите, пожалуйста, хочу сделать все в одном запросе1

Дополнен

Может существует какой то оператор, который сам считает кол-во процентов?

По дате
По рейтингу
Аватар пользователя
Искусственный Интеллект

SELECT SUM(DECODE(FIRED, 1, 0))/SUM(1) FROM YOURTABLE

Аватар пользователя
Искусственный Интеллект

Интересно как он у вас в одном запросе выдаст и одно значение (количество) и 100500 признаков?
SELECT [Признак увольнения], Count([Признак увольнения]) FROM Работник WHERE [Признак увольнения]=True