Ошибка «операнд должен содержать 1 столбец (столбцы)» при использовании SET для вычисления процента в SQL - PullRequest
0 голосов
/ 13 февраля 2019

Я создал таблицу performanceByUser со столбцами user и avgEncHr (и другими, которые не имеют отношения).Я пытаюсь рассчитать процент каждого avgEncHr и хочу назвать это PercAvgEncHr.Я только хочу показать все столбцы, где PercAvgEncHr> 25.

Я пробовал много разных вещей, таких как изменение таблицы и столбца и т. Д., И это дает мне ошибку: операнд должен содержать 1 столбец (столбцы).

SET @count = (SELECT COUNT(user)
FROM productivityByUser);


SET @totalAvgEncHr = (SELECT SUM(avgEncHr)
FROM productivityByUser);

-- ALTER TABLE productivityByUser
--  ADD COLUMN PercAvgEncHr INTEGER;

SET @PercAvgEncHr = (
    SELECT avgEncHr, @totalAvgEncHr,(avgEncHr) / ((SUM(avgEncHr)) * 100)
FROM productivityByUser);


SELECT * FROM productivityByUser WHERE (PercAvgEncHr > 25);

1 Ответ

0 голосов
/ 13 февраля 2019
SET @PercAvgEncHr = ( SELECT avgEncHr/ SUM(avgEncHr) * 100 FROM productivityByUser );

Теперь вы храните только одну запись.Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...