в колонке. Мы строим отчёт, группируем данные в таблицы и по этой колонке делаем avg(x). Возникает такая проблема: допустим в нормальном режиме значения этой колонки врьируются примерно от 100 до 200, т.ч. среднее значение должно быть ~140-160; но, из-за бага в платформе может появится строка где это значение будет равно миллиарду. В таком случае значение avg в отчёте уползает дико вверх, хотя это может быть одна строка из нескольких тысяч. Подскажите, пожалуйста, есть ли вариант функции avg, который как-то "отсекает" такие слишком отличающиеся от среднего значения? Или что-то подобное?
Привет, можно считать медиану или выкидывать какой-то процент верхних наблюдений (например, смотреть на 95%-квантиль и все что выше не учитывать или приводить к нему).
https://clickhouse.yandex/docs/ru/single/#medianx
Попробуйте комбинатор if: SELECT argIf(x < 1000, x)
Обсуждают сегодня