8
我有一組記錄,我從一個文件中加載,我需要做的第一件事是獲取列的最大值和最小值。 在SQL我會這樣子查詢做到這一點:PIG中整套記錄的最大值/最小值
select c.state, c.population,
(select max(c.population) from state_info c) as max_pop,
(select min(c.population) from state_info c) as min_pop
from state_info c
我認爲必須有一個簡單的方法來做到這一點豬很好,但我無法找到它。它有一個最大和最小的功能,但是當我試着做以下沒有工作:
records=LOAD '/Users/Winter/School/st_incm.txt' AS (state:chararray, population:int);
with_max = FOREACH records GENERATE state, population, MAX(population);
這沒有奏效。我有更好的運氣爲每行添加一個具有相同值的額外列,然後將它們分組到這一列。然後獲得新組的最大值。這似乎是一種讓我想要得到的令人費解的方式,所以我想我會問有沒有人知道更簡單的方法。
在此先感謝您的幫助。
謝謝 - 我知道必須有一個簡單的方法來做到這一點。 – Winter 2011-03-10 23:56:22