Перейти к основному содержанию

Описание

Комбинатор SimpleState можно применить к функции sum, чтобы вычислить сумму всех входных значений. Он возвращает результат типа SimpleAggregateFunction.

Пример использования

Отслеживание положительных и отрицательных голосов

Рассмотрим практический пример с таблицей, в которой отслеживаются голоса за посты. Для каждого поста мы хотим поддерживать накопительные итоги по положительным и отрицательным голосам, а также общий рейтинг. Для этого сценария хорошо подходит тип SimpleAggregateFunction с sum, поскольку нам нужно хранить только накопительные итоги, а не полное состояние агрегации. В результате это будет быстрее и не потребует слияния частичных состояний агрегатных функций. Сначала создадим таблицу для исходных данных:
Query
Далее создадим целевую таблицу, в которой будут храниться агрегированные данные:
Затем мы создаём materialized view со столбцами типа SimpleAggregateFunction:
Вставьте тестовые данные:
Выполните запрос к materialized view с помощью комбинатора SimpleState:

См. также

Последнее изменение 10 июня 2026 г.