array_reverse_sort

SinceVersion 2.0

array_reverse_sort

description

Syntax

ARRAY<T> array_reverse_sort(ARRAY<T> arr)

返回按降序排列后的数组,如果输入数组为NULL,则返回NULL。 如果数组元素包含NULL, 则输出的排序数组会将NULL放在最后面。

notice

仅支持向量化引擎中使用

example

1. mysql> set enable_vectorized_engine=true;
2. mysql> select k1, k2, array_reverse_sort(k2) from array_test;
3. +------+-----------------------------+-----------------------------+
4. | k1   | k2                          | array_reverse_sort(`k2`)    |
5. +------+-----------------------------+-----------------------------+
6. |  1   | [1, 2, 3, 4, 5]             | [5, 4, 3, 2, 1]             |
7. |  2   | [6, 7, 8]                   | [8, 7, 6]                   |
8. |  3   | []                          | []                          |
9. |  4   | NULL                        | NULL                        |
10. |  5   | [1, 2, 3, 4, 5, 4, 3, 2, 1] | [5, 4, 4, 3, 3, 2, 2, 1, 1] |
11. |  6   | [1, 2, 3, NULL]             | [3, 2, 1, NULL]             |
12. |  7   | [1, 2, 3, NULL, NULL]       | [3, 2, 1, NULL, NULL]       |
13. |  8   | [1, 1, 2, NULL, NULL]       | [2, 1, 1, NULL, NULL]       |
14. |  9   | [1, NULL, 1, 2, NULL, NULL] | [2, 1, 1, NULL, NULL, NULL] |
15. +------+-----------------------------+-----------------------------+

17. mysql> select k1, k2, array_reverse_sort(k2) from array_test01;
18. +------+------------------------------------------+------------------------------------------+
19. | k1   | k2                                       | array_reverse_sort(`k2`)                 |
20. +------+------------------------------------------+------------------------------------------+
21. |  1   | ['a', 'b', 'c', 'd', 'e']                | ['e', 'd', 'c', 'b', 'a']                |
22. |  2   | ['f', 'g', 'h']                          | ['h', 'g', 'f']                          |
23. |  3   | ['']                                     | ['']                                     |
24. |  3   | [NULL]                                   | [NULL]                                   |
25. |  5   | ['a', 'b', 'c', 'd', 'e', 'a', 'b', 'c'] | ['e', 'd', 'c', 'c', 'b', 'b', 'a', 'a'] |
26. |  6   | NULL                                     | NULL                                     |
27. |  7   | ['a', 'b', NULL]                         | ['b', 'a', NULL]                         |
28. |  8   | ['a', 'b', NULL, NULL]                   | ['b', 'a', NULL, NULL]                  |
29. +------+------------------------------------------+------------------------------------------+

keywords

ARRAY, SORT, REVERSE, ARRAY_SORT, ARRAY_REVERSE_SORT