2020-07-29 06:49:57 +00:00
---
toc_priority: 105
---
# argMin {#agg-function-argmin}
2021-02-05 08:15:11 +00:00
Вычисляет значение `arg` при минимальном значении `val` . Если есть несколько разных значений `arg` для минимальных значений `val` , возвращает первое попавшееся из таких значений.
2020-07-29 06:49:57 +00:00
2021-02-05 08:15:11 +00:00
Если функции передан кортеж, то будет выведен кортеж с минимальным значением `val` . Удобно использовать для работы с [SimpleAggregateFunction ](../../../sql-reference/data-types/simpleaggregatefunction.md ).
2020-07-29 06:49:57 +00:00
2021-02-05 08:15:11 +00:00
**Синтаксис**
``` sql
argMin(arg, val)
```
или
``` sql
argMin(tuple(arg, val))
```
2021-03-13 18:18:45 +00:00
**Аргументы**
2021-02-05 08:15:11 +00:00
- `arg` — аргумент.
- `val` — значение.
**Возвращаемое значение**
- Значение `arg` , соответствующее минимальному значению `val` .
Тип: соответствует типу `arg` .
Если передан кортеж:
2021-02-08 15:25:36 +00:00
- Кортеж `(arg, val)` c минимальным значением `val` и соответствующим ему `arg` .
2021-02-05 08:15:11 +00:00
Тип: [Tuple ](../../../sql-reference/data-types/tuple.md ).
**Пример**
2021-02-06 10:23:57 +00:00
Исходная таблица:
2020-07-29 06:49:57 +00:00
``` text
┌─user─────┬─salary─┐
│ director │ 5000 │
│ manager │ 3000 │
│ worker │ 1000 │
└──────────┴────────┘
```
2021-02-05 08:15:11 +00:00
Запрос:
2020-07-29 06:49:57 +00:00
``` sql
2021-02-05 08:15:11 +00:00
SELECT argMin(user, salary), argMin(tuple(user, salary)) FROM salary;
2020-07-29 06:49:57 +00:00
```
2021-02-05 08:15:11 +00:00
Результат:
2020-07-29 06:49:57 +00:00
``` text
2021-02-05 08:15:11 +00:00
┌─argMin(user, salary)─┬─argMin(tuple(user, salary))─┐
│ worker │ ('worker',1000) │
└──────────────────────┴─────────────────────────────┘
2020-07-29 06:49:57 +00:00
```
2020-07-30 12:49:19 +00:00