GitHub GitHub의 컨트리뷰션: 온라인 편집

배열 정렬 오름차순 ()

하나 이상의 배열을 수신합니다. 첫 번째 배열을 오름차순으로 정렬합니다. 나머지 배열을 다시 정렬된 첫 번째 배열과 일치하도록 정렬합니다.

구문

array_sort_asc(array1[, ..., argumentN])

array_sort_asc(array1[, ..., argumentN],nulls_last)

nulls_last 가 제공되지 않으면 기본값 true 가 사용됩니다.

인수

  • array1...arrayN: 입력 배열.
  • nulls_last: null가 마지막에 있어야 하는지 여부를 표시하는 부울

리턴값

입력에서와 동일한 수의 배열을 리턴합니다. 첫 번째 배열은 오름차순으로 정렬되고 나머지 배열은 다시 정렬된 첫 번째 배열과 일치하도록 정렬됩니다.

null 는 첫 번째 배열과 길이가 다른 모든 배열에 대해 리턴됩니다.

배열에 다른 유형의 요소가 포함되어 있는 경우 다음 순서로 정렬됩니다.

  • 숫자, datetimetimespan 요소
  • 문자열 요소
  • Guid 요소
  • 기타 모든 요소

예제 1-두 개의 배열 정렬

let array1 = dynamic([1,3,4,5,2]);
let array2 = dynamic(["a","b","c","d","e"]);
print array_sort_asc(array1,array2)

결과

array1_sorted array2_sorted
[1,2,3,4, 5] ["a", "e", "b", "c", "d"]

출력 열 이름은 함수에 대한 인수를 기반으로 자동으로 생성됩니다. 출력 열에 다른 이름을 지정하려면 다음 구문을 사용하십시오. ... | extend (out1, out2) = array_sort_asc(array1,array2)

예제 2-하위 문자열 정렬

let Names = "John,Paul,George,Ringo";
let SortedNames = strcat_array(array_sort_asc(split(Names, ",")), ",");
print result = SortedNames

결과

result
조지, 존, 폴, 링고

예 3-요약 및 array_sort_asc 결합

datatable(command:string, command_time:datetime, user_id:string)
[
    'chmod',   datetime(2019-07-15),   "user1",
    'ls',      datetime(2019-07-02),   "user1",
    'dir',     datetime(2019-07-22),   "user1",
    'mkdir',   datetime(2019-07-14),   "user1",
    'rm',      datetime(2019-07-27),   "user1",
    'pwd',     datetime(2019-07-25),   "user1",
    'rm',      datetime(2019-07-23),   "user2",
    'pwd',     datetime(2019-07-25),   "user2",
]
| summarize timestamps = make_list(command_time), commands = make_list(command) by user_id
| project user_id, commands_in_chronological_order = array_sort_asc(timestamps, commands)[1]

결과

user_id commands_in_chronological_order
user1 [
"ls",
"mkdir",
"chmod",
"dir",
"pwd",
"rm"
]
user2 [
"rm",
"pwd"
]

데이터에 null 값이 포함되어 있는 경우 make_list대신 make_list_with_nulls 를 사용하십시오.

예제 4- null 값의 위치 제어

기본적으로 null 값은 정렬된 배열에서 마지막에 배치됩니다. 그러나 bool 값을 array_sort_asc()에 마지막 인수로 추가하여 명시적으로 제어할 수 있습니다.

기본 동작의 예:

print array_sort_asc(dynamic([null,"blue","yellow","green",null]))

결과

print_0
["파란색", "녹색", "노란색", 널, 널]

기본이 아닌 동작의 예:

print array_sort_asc(dynamic([null,"blue","yellow","green",null]), false)

결과

print_0
[널, 널, "파란색", "초록색", "노란색"]

관련 참조

첫 번째 배열을 내림차순으로 정렬하려면 array_sort_desc ()를 사용하십시오.