Try this: select distinct arr --- Distinct Values from ( select explode(arr) as arr -- Breaks Array in every column, as separate row . ( select map_keys(KV) as arr -- Returns an array of the Key Names for every row . from <table Name> )a ) c order by arr;
Thanks, Moiz On Jul 25, 2013, at 2:08 PM, R J <rj201...@yahoo.com<mailto:rj201...@yahoo.com>> wrote: Hi All, I have a table in Apache Hive and I am interested in a specific field of the table. Table name: Table1 and field name f1. The field f1 is of type MAP<string, string>. The table is huge. How could I find the distinct key values of the MAP variable f1 above? I tried: $hive -e "select distinct map_keys(f1) from Table1;" $hive -e "select k from Table1 LATERAL VIEW explode(f1) et as k,v;" Each of the above returned syntax error. Could you please help. If the existing values for a few fields of the table ate: <x, y> <x, p> <m, n> <empty> <m, m> <p, q> I want the return to be: x m p Thanks a lot.