dfrankow
dfrankow

Reputation: 21459

Is Hive's collect_list ordered?

This page says of collect_list:

Returns a list of objects with duplicates.

Is that list ordered? For example, the order of the query results?

Upvotes: 5

Views: 8737

Answers (2)

Tristan Reid
Tristan Reid

Reputation: 6154

It's correct that collect_list isn't guaranteed to be ordered. The function sort_array will sort the result:

   select a, b, sort_array(collect_list(c)) as sorted_c
   from the_table
   group by a, b

Upvotes: 4

o-90
o-90

Reputation: 17613

built-in collect_list isn't guaranteed to be ordered, even if you do an order by first (even if it did ensure order, doing it this way is a waste of time). Just use brickhouse collect; it ensures the elements are ordered.

Upvotes: 2

Related Questions