--- toc_priority: 106 --- # argMax {#agg-function-argmax} Вычисляет значение `arg` при максимальном значении `val`. Если есть несколько разных значений `arg` для максимальных значений `val`, возвращает первое попавшееся из таких значений. Если функции передан кортеж, то будет выведен кортеж с максимальным значением `val`. Удобно использовать для работы с [SimpleAggregateFunction](../../../sql-reference/data-types/simpleaggregatefunction.md). **Синтаксис** ``` sql argMax(arg, val) ``` или ``` sql argMax(tuple(arg, val)) ``` **Параметры** - `arg` — аргумент. - `val` — значение. **Возвращаемое значение** - Значение `arg`, соответствующее максимальному значению `val`. Тип: соответствует типу `arg`. Если передан кортеж: - Кортеж `(arg, val)` c максимальным значением `val` и соответствующим ему `arg`. Тип: [Tuple](../../../sql-reference/data-types/tuple.md). **Пример** Исходная таблица: ``` text ┌─user─────┬─salary─┐ │ director │ 5000 │ │ manager │ 3000 │ │ worker │ 1000 │ └──────────┴────────┘ ``` Запрос: ``` sql SELECT argMax(user, salary), argMax(tuple(user, salary)) FROM salary; ``` Результат: ``` text ┌─argMax(user, salary)─┬─argMax(tuple(user, salary))─┐ │ director │ ('director',5000) │ └──────────────────────┴─────────────────────────────┘ ``` [Оригинальная статья](https://clickhouse.tech/docs/ru/sql-reference/aggregate-functions/reference/argmax/)