Как нормализовать колонку в улье?
Я пытаюсь нормализовать столбец в улье, что означает, что я должен сделать каждое значение в столбце делить максимальное значение в этом столбце. Например: у меня есть таблица X:
A B C D
1 0.1 3 0.2
2 0.2 4 0.5
3 0.3 5 0.2
Я хочу нормализовать столбец C, запрошенная таблица Y:
A B C D
1 0.1 0.6 0.2
2 0.2 0.8 0.5
3 0.3 1 0.2
Я не знаю, как написать SQL, чтобы выразить максимальное значение всего столбца.
2 ответа
Решение
max
оконная функция
select a
,b
,c / max(c) over () as c
,d
from x
+---+-----+-----+-----+
| a | b | c | d |
+---+-----+-----+-----+
| 1 | 0.1 | 0.6 | 0.2 |
| 2 | 0.2 | 0.8 | 0.5 |
| 3 | 0.3 | 1 | 0.2 |
+---+-----+-----+-----+