> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-86180b7b.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> `val`의 최댓값에 해당하는 `arg` 및 `val` 값을 계산합니다. 최댓값인 동일한 `val`을 가진 행이 여러 개 있는 경우, 연결된 `arg` 및 `val` 중 어떤 값이 반환될지는 결정적이지 않습니다.

# argAndMax

<div id="argAndMax">
  ## argAndMax
</div>

도입 버전: v1.1.0

최대 `val` 값에 대한 `arg`와 `val` 값을 계산합니다.
최대값과 같은 `val`을 가진 행이 여러 개인 경우, 해당하는 `arg`와 `val` 중 어떤 값이 반환될지는 결정적이지 않습니다.
`arg`와 `max` 두 부분은 모두 [집계 함수](/ko/reference/functions/aggregate-functions)처럼 동작하며, 처리 중에 [`Null`을 건너뛰고](/ko/reference/functions/aggregate-functions#null-processing) `Null`이 아닌 값을 사용할 수 있으면 `Null`이 아닌 값을 반환합니다.

<Note>
  `argMax`와의 유일한 차이점은 `argAndMax`가 인수와 값을 모두 반환한다는 점입니다.
</Note>

**관련 항목**

* [argMax](/ko/reference/functions/aggregate-functions/argMax)
* [Tuple](/ko/reference/data-types/tuple)

**구문**

```sql theme={null}
argAndMax(arg, val)
```

**인수**

* `arg` — 최댓값을 찾을 대상 인수입니다. [`const String`](/ko/reference/data-types/string)
* `val` — 최댓값으로 사용할 값입니다. [`(U)Int8/16/32/64`](/ko/reference/data-types/int-uint) 또는 [`Float*`](/ko/reference/data-types/float) 또는 [`Date`](/ko/reference/data-types/date) 또는 [`DateTime`](/ko/reference/data-types/datetime) 또는 [`Tuple`](/ko/reference/data-types/tuple)

**반환 값**

최대 `val` 값에 대응하는 `arg` 값과 최대 `val` 값을 포함하는 튜플을 반환합니다. [`Tuple`](/ko/reference/data-types/tuple)

**예시**

**기본 사용법**

```sql title=Query theme={null}
SELECT argAndMax(user, salary) FROM salary;
```

```response title=Response theme={null}
┌─argAndMax(user, salary)─┐
│ ('director',5000)       │
└─────────────────────────┘
```

**NULL 처리를 포함한 확장 예시**

```sql title=Query theme={null}
CREATE TABLE test
(
    a Nullable(String),
    b Nullable(Int64)
)
ENGINE = Memory AS
SELECT *
FROM VALUES(('a', 1), ('b', 2), ('c', 2), (NULL, 3), (NULL, NULL), ('d', NULL));

SELECT argMax(a, b), argAndMax(a, b), max(b) FROM test;
```

```response title=Response theme={null}
┌─argMax(a, b)─┬─argAndMax(a, b)─┬─max(b)─┐
│ b            │ ('b',2)         │      3 │
└──────────────┴─────────────────┴────────┘
```

**인수에서 Tuple 사용하기**

```sql title=Query theme={null}
SELECT argAndMax(a, (b,a)) FROM test;
```

```response title=Response theme={null}
┌─argAndMax(a, (b, a))─┐
│ ('c',(2,'c'))        │
└──────────────────────┘
```

**관련 항목**

* [argMax](/ko/reference/functions/aggregate-functions/argMax)
* [Tuple](/ko/reference/data-types/tuple)
