Tengo un conjunto de registros que estoy cargando desde un archivo y lo primero que tengo que hacer es obtener el máximo y el mínimo de una columna. En SQL Me gustaría hacer esto con una subconsulta como esto:Max/Min para conjuntos completos de registros en 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
que asumen que debe haber una manera fácil de hacer esto en PIG así pero estoy teniendo problemas para encontrarlo. Tiene una función MAX y MIN pero cuando he intentado hacer lo siguiente no funcionó:
records=LOAD '/Users/Winter/School/st_incm.txt' AS (state:chararray, population:int);
with_max = FOREACH records GENERATE state, population, MAX(population);
Esto no funcionó. Tengo más suerte al agregar una columna adicional con el mismo valor a cada fila y luego agrupándolas en esa columna. Luego sacando el máximo de ese nuevo grupo. Esto parece una forma complicada de obtener lo que quiero, así que pensé en preguntar si alguien sabe de una manera más simple.
Gracias de antemano por la ayuda.
Gracias - Yo sabía que tenía que ser una forma sencilla de hacerlo. – Winter