arg_max()(집계 함수)
적용 대상: ✅Microsoft Fabric✅✅
테이블에서 지정된 식을 최대화하는 행을 찾습니다. 입력 테이블 또는 지정된 열의 모든 열을 반환합니다.
참고 항목
이 함수는 summarize 연산자와 함께 사용됩니다.
사용되지 않는 별칭: argmax()
구문
arg_max
(
ExprToMaximize,
* | ExprToReturn [,
...])
구문 규칙에 대해 자세히 알아봅니다.
매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
ExprToMaximize | string |
✔️ | 최대값이 결정되는 식입니다. |
ExprToReturn | string |
✔️ | 식은 ExprToMaximize최대값이 있는 행에서 반환되는 열의 값을 결정합니다. 와일드카드 * 사용하여 모든 열을 반환합니다. |
반품
ExprToMaximize
팁
최대값만 보려면 max() 함수사용합니다.
예제
각 상태에서 Storm 이벤트의 최대 위도를 찾습니다.
StormEvents
| summarize arg_max(BeginLat, BeginLocation) by State
결과 테이블에는 처음 10개 행만 표시됩니다.
State(상태) | BeginLat | BeginLocation |
---|---|---|
미시시피 | 34.97 | 바튼 |
버몬트 | 45 | 노스 트로이 |
AMERICAN SAMOA | -14.2 | OFU |
하와이 | 22.2113 | 프린스 빌 |
MINNESOTA | 49.35 | 아르네센 주 |
로드아일랜드 | 42 | WOONSOCKET |
인디애나 | 41.73 | 프리 몬 트 |
WEST VIRGINIA | 40.62 | 체스터 |
SOUTH CAROLINA | 35.18 | LANDRUM |
TEXAS | 36.4607 | DARROUZETT |
... | ... | ... |
모든 열을 표시하는 각 상태에서 직접 사망 이벤트가 마지막으로 발생한 시간을 찾습니다.
쿼리는 먼저 이벤트를 필터링하여 최소 한 번의 직접 사망이 발생한 이벤트만 포함합니다. 그런 다음 쿼리는 가장 최근의 StartTime을 사용하여 전체 행을 반환합니다.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *) by State
결과 테이블에는 처음 10개의 행과 처음 3개의 열만 표시됩니다.
State(상태) | StartTime | EndTime | ... |
---|---|---|---|
괌 | 2007-01-27T11:15:00Z | 2007-01-27T11:30:00Z | ... |
매사추세츠주 | 2007-02-03T22:00:00Z | 2007-02-04T10:00:00Z | ... |
AMERICAN SAMOA | 2007-02-17T13:00:00Z | 2007-02-18T11:00:00Z | ... |
IDAHO | 2007-02-17T13:00:00Z | 2007-02-17T15:00:00Z | ... |
델라웨어 | 2007-02-25T13:00:00Z | 2007-02-26T01:00:00Z | ... |
WYOMING | 2007-03-10T17:00:00Z | 2007-03-10T17:00:00Z | ... |
뉴멕시코주 | 2007-03-23T18:42:00Z | 2007-03-23T19:06:00Z | ... |
인디애나 | 2007-05-15T14:14:00Z | 2007-05-15T14:14:00Z | ... |
몬태나주 | 2007-05-18T14:20:00Z | 2007-05-18T14:20:00Z | ... |
미시간 호수 | 2007-06-07T13:00:00Z | 2007-06-07T13:00:00Z | ... |
... | ... | ... | ... |
다음 예제에서는 null 처리를 보여 줍니다.
datatable(Fruit: string, Color: string, Version: int) [
"Apple", "Red", 1,
"Apple", "Green", int(null),
"Banana", "Yellow", int(null),
"Banana", "Green", int(null),
"Pear", "Brown", 1,
"Pear", "Green", 2,
]
| summarize arg_max(Version, *) by Fruit
출력
과일 | 버전 | 색 |
---|---|---|
Apple | 1 | 빨강 |
바나나 | 노란색 | |
배 | 2 | 녹색 |
max()와 비교
arg_max() 함수는 max() 함수다릅니다. arg_max() 함수를 사용하면 최대값과 함께 추가 열을 반환할 수 있으며 max() 최대값 자체만 반환합니다.
예제
arg_max()
테이블의 모든 열을 보여 주는 직접 사망 이벤트가 마지막으로 발생한 시간을 찾습니다.
쿼리는 먼저 이벤트를 필터링하여 최소 한 번의 직접 사망이 발생한 이벤트만 포함합니다. 그런 다음 쿼리는 가장 최근(최대) StartTime을 사용하여 전체 행을 반환합니다.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *)
결과 테이블은 지정된 식에서 가장 높은 값을 포함하는 행의 모든 열을 반환합니다.
StartTime | EndTime | EpisodeId | EventId | State(상태) | EventType | ... |
---|---|---|---|---|---|---|
2007-12-31T15:00:00Z | 2007-12-31T15:00:00 | 12688 | 69700 | 유타 | 눈사태 | ... |
max()
직접 사망 이벤트가 마지막으로 발생한 시간을 찾습니다.
쿼리는 직접 사망이 하나 이상 있는 이벤트만 포함하도록 이벤트를 필터링한 다음 StartTime의 최대값을 반환합니다.
StormEvents
| where DeathsDirect > 0
| summarize max(StartTime)
결과 테이블은 이 레코드에 대한 다른 열을 반환하지 않고 StartTime의 최대값을 반환합니다.
max_StartTime |
---|
2007-12-31T15:00:00Z |