Введение
-Map.
В этой статье мы разберем, как это сделать.
Ниже также доступно видео с тем же материалом:
Что такое комбинаторы агрегатных функций
sumMap, которая принимает объект типа Map и суммирует значения для каждого ключа:
sumMap для нескольких строк со значениями Map;
ClickHouse присутствовал в обеих строках, и его значения были суммированы. Ключ ClickBench присутствовал только в одной строке, поэтому суммируется только одно значение — в результате возвращается оно же!
Мы также можем использовать maxMap, чтобы найти максимальные значения для каждого ключа:
avgMap, чтобы вычислить среднее значение по каждому ключу:
Практическое применение: набор данных о ценах на жильё в Великобритании
uk_price_paid, поэтому давайте сначала посмотрим, какие данные в ней хранятся:
Группировка и агрегация по десятилетиям
Фильтрация результатов
Объединение нескольких агрегаций
maxMap, которую мы уже видели ранее:
Применение функций к значениям Map
avgMap.
У этих значений слишком много знаков после запятой, но это можно исправить, применив функцию mapApply, чтобы вызвать функцию floor для каждого значения в Map:
Гибкая группировка: графства, районы и почтовые индексы
postcode1 и postcode2 в map: