Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Presto SQL - How can i get all possible combination of an array?

I want all the possible combination of a number in a given set of array.

I tried using some of the predefined functions of presto like array_agg(x)

Input : [1,2,3,4]
Output
when n=2 : [[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]]
when n=3 : [[1,2,3],[1,2,4],[1,3,4],[2,3,4]]
when n=4 : [[1,2,3,4]] or [1,2,3,4]
like image 752
Arun Kumar Dave Avatar asked Jun 11 '19 09:06

Arun Kumar Dave


1 Answers

There is combinations(array(T), n) function and it does exactly what you want:

select combinations(array[1,2,3,4],2);
like image 66
leftjoin Avatar answered Sep 28 '22 03:09

leftjoin