first_value
Это псевдоним для any
, но он был введен для совместимости с функциями окон, где иногда необходимо обрабатывать значения NULL
(по умолчанию все агрегирующие функции ClickHouse игнорируют значения NULL).
Он поддерживает объявление модификатора для учета нулей (RESPECT NULLS
), как в функциях окон, так и в обычных агрегатах.
Как и в случае с any
, без функций окон результат будет случайным, если исходный поток не упорядочен и тип возвращаемого значения соответствует типу входного значения (Null возвращается только в том случае, если входное значение является Nullable или добавлен комбинированный -OrNull).
примеры
пример1
По умолчанию значение NULL игнорируется.
пример2
Значение NULL игнорируется.
пример3
Значение NULL принимается.
пример4
Стабилизированный результат с использованием подзапроса с ORDER BY
.