Я вставил изображение с wat o / pi. Надеюсь, это поможет
![enter image description here](https://i.stack.imgur.com/xCZtV.png)
Я пытаюсь рассчитать процент отдельных строк с общимодного конкретного столбца.
Я могу добиться этого в операторе SELECT
с псевдонимом, но у меня есть дальнейшие вычисления с помощью столбца per
, где я получаю другие столбцы, поэтому мне нужно этобыть в UPDATE
запросе.Я попытался выполнить приведенный ниже запрос, но получаю сообщение об ошибке:
Недопустимая операция: подзапрос должен возвращать только один столбец
У меня нет уникального идентификатора.Я не могу использовать IN
заявления в этом.
Куда я иду не так?
UPDATE a
SET per = (SELECT DISTINCT
code,
p,
pd,
ratio_to_report(SUM(amnt)) OVER (PARTITION BY p) AS per
FROM a
GROUP BY code,p,pd
)
WHERE per IS null;