Jak wykonać DISTINCT w Pig Latin na podzbiorze kolumn?
Chciałbym wykonać operację DISTINCT na podzbiorze kolumn. Thedokumentacja mówi, że jest to możliwe dzięki zagnieżdżonym foreach:
Nie można użyć DISTINCT na podzbiorze pól; w tym celu użyj FOREACH i zagnieżdżonego bloku, aby najpierw zaznaczyć pola, a następnie zastosować DISTINCT (patrz Przykład: Zagnieżdżony blok).
Łatwo jest wykonać operację DISTINCT na wszystkich kolumnach:
A = LOAD 'data' AS (a1,a2,a3,a4);
A_unique = DISTINCT A;
Powiedzmy, że jestem zainteresowany wykonaniem odmiennego między a1, a2 i a3. Czy ktoś może podać przykład pokazujący, jak wykonać tę operację z zagnieżdżonym foreach, jak sugerowano w dokumentacji?
Oto przykład danych wejściowych i oczekiwanych:
A = LOAD 'data' AS(a1,a2,a3,a4);
DUMP A;
(1 2 3 4)
(1 2 3 4)
(1 2 3 5)
(1 2 4 4)
-- insert DISTINCT operation on a1,a2,a3 here:
-- ...
DUMP A_unique;
(1 2 3 4)
(1 2 4 4)