Комментарии 2
Спасибо за интересную статью, скажите, а можно ли за раз вернуть массив значений, например – перцентиль, среднее и медиану на одних и тех же данных, не вызывая при этом итератор три раза (в разных функциях). Или, это будет доступно только через хранимые процедуры.
Вероятно, можно сохранить промежуточные результаты агрегаций в thread_local, до вызова последней (очищающей) функции, но, наверное это не очень красивое решение.
Для расчёта медианы и перцентиля не нужно сортировать данные. Можно посчитать дешевле. В стандартной библиотеке уже есть готовый метод https://en.cppreference.com/w/cpp/algorithm/nth_element
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Разработка пользовательских агрегатных функций для аналитики в MySQL