array_sort

description

Syntax

  1. ARRAY<T> array_sort(ARRAY<T> arr)

Return the array which has been sorted in ascending order. Return NULL for NULL input. If the element of array is NULL, it will be placed in the front of the sorted array.

notice

Only supported in vectorized engine

example

  1. mysql> set enable_vectorized_engine=true;
  2. mysql> select k1, k2, array_sort(k2) array_test;
  3. +------+-----------------------------+-----------------------------+
  4. | k1 | k2 | array_sort(`k2`) |
  5. +------+-----------------------------+-----------------------------+
  6. | 1 | [1, 2, 3, 4, 5] | [1, 2, 3, 4, 5] |
  7. | 2 | [6, 7, 8] | [6, 7, 8] |
  8. | 3 | [] | [] |
  9. | 4 | NULL | NULL |
  10. | 5 | [1, 2, 3, 4, 5, 4, 3, 2, 1] | [1, 1, 2, 2, 3, 3, 4, 4, 5] |
  11. | 6 | [1, 2, 3, NULL] | [NULL, 1, 2, 3] |
  12. | 7 | [1, 2, 3, NULL, NULL] | [NULL, NULL, 1, 2, 3] |
  13. | 8 | [1, 1, 2, NULL, NULL] | [NULL, NULL, 1, 1, 2] |
  14. | 9 | [1, NULL, 1, 2, NULL, NULL] | [NULL, NULL, NULL, 1, 1, 2] |
  15. +------+-----------------------------+-----------------------------+
  16. mysql> select k1, k2, array_sort(k2) from array_test01;
  17. +------+------------------------------------------+------------------------------------------+
  18. | k1 | k2 | array_sort(`k2`) |
  19. +------+------------------------------------------+------------------------------------------+
  20. | 1 | ['a', 'b', 'c', 'd', 'e'] | ['a', 'b', 'c', 'd', 'e'] |
  21. | 2 | ['f', 'g', 'h'] | ['f', 'g', 'h'] |
  22. | 3 | [''] | [''] |
  23. | 3 | [NULL] | [NULL] |
  24. | 5 | ['a', 'b', 'c', 'd', 'e', 'a', 'b', 'c'] | ['a', 'a', 'b', 'b', 'c', 'c', 'd', 'e'] |
  25. | 6 | NULL | NULL |
  26. | 7 | ['a', 'b', NULL] | [NULL, 'a', 'b'] |
  27. | 8 | ['a', 'b', NULL, NULL] | [NULL, NULL, 'a', 'b'] |
  28. +------+------------------------------------------+------------------------------------------+

keywords

ARRAY, SORT, ARRAY_SORT