Ich möchte nach einem bestimmten Feld gruppieren und die Ausgabe mit gruppierten Feldern erhalten. Unten ist ein Beispiel dafür, was ich zu erreichen versuchen: -Wie bekomme ich Array/Beutel mit Elementen von Hive Group nach Operator?
eine Tabelle, wie unten ‚sample_table‘ mit zwei Spalten namens Imagine: -
F1 F2
001 111
001 222
001 123
002 222
002 333
003 555
Ich mag Hive Abfrage schreiben, die die unten Ausgabe geben werden : -
001 [111, 222, 123]
002 [222, 333]
003 [555]
In Schwein, das durch so etwas wie dieses lassen sich sehr leicht erreicht: -
grouped_relation = GROUP sample_table BY F1;
Kann jemand bitte vorschlagen, ob es eine einfache Möglichkeit gibt, dies in Hive zu tun? Was ich mir vorstellen kann, ist eine benutzerdefinierte Funktion (User Defined Function, UDF) dafür zu schreiben, aber das könnte eine sehr zeitraubende Option sein.
In Hive 0.13 gibt es eine Funktion 'collect_list', die Duplikate zurückgibt. –