...
Row-set columns types | Name(Signature) | Description |
---|---|---|
T | explode(a ARRAY<T>) | Explodes an array to multiple rows. Returns a row-set with a single column (col), one row for each element from the array. |
int,T | posexplode(a ARRAY<T>) | Explodes an array to multiple rows with additional positional column of int type (position of items in the original array, starting with 0). Returns a row-set with two columns (pos,val), one row for each element from the array. |
Tkey,Tvalue | explode(m MAP<Tkey,Tvalue>) | Explodes a map to multiple rows. Returns a row-set with a two columns (key,value) , one row for each key-value pair from the input map. (As of Hive 0.8.0.). |
T1,...,Tn | inline(a ARRAY<STRUCT<f1:T1,...,fn:Tn>>) | Explodes an array of structs to multiple rows. Returns a row-set with N columns (N = number of top level elements in the struct), one row per struct from the array. (As of Hive 0.10.) |
T1,...,Tn/r | stack(rows_num r int, V1 T1,...,Vn-1 Tn/r-1,Vn Tn/r) | Breaks up n values V1,...,Vn into r rows_num rows. Each row will have n/ rows_num r columns. rows_num r must be constant. |
string1,...,stringn | json_tuple(jsonStr string,k1 string,...,kn string) | Takes JSON string and a set of n keys, and returns a tuple of n values. This is a more efficient version of the |
string 1,...,stringn | parse_url_tuple(urlStr string,p1 string,...,pn string) | Takes URL string and a set of n URL parts, and returns a tuple of n values. This is similar to the |
...