Returns the elements of the input array in descending order.
If the argument <function> is provided, the sorting order is determined by the result of applying <function> on each element of the array.
Syntax
ARRAY_REVERSE_SORT([<function>,] <array>)
Parameters
| Parameter | Description | Supported input type |
|---|
<function> | An optional function to be used to determine the sort order. | Any lambda function that takes the elements of <array> as input |
<array> | The array to be sorted. | Any array |
Return Type
ARRAY of the same type as the input array
Examples
SELECT ARRAY_REVERSE_SORT([4, 1, 3, 2]);
| array_reverse_sort array(int) |
|---|
| [4, 3, 2, 1] |
Rows: 1Execution time: 6.25ms
In this example, the modulus operator is used to calculate the remainder on any odd numbers. Therefore ARRAY_REVERSE_SORT puts the lower (even) numbers last in the results.
SELECT ARRAY_REVERSE_SORT(x -> x % 2, [4, 1, 3, 2]);
| array_reverse_sort array(int) |
|---|
| [1, 3, 4, 2] |
Rows: 1Execution time: 6.64ms