2012-03-27 12 views
6

Lo que quiero hacer es sumar valores de un campo en todas las filas de un alias. Esto debe ser simple, pero de alguna manera no puedo encontrar la respuesta. ¿Esto es probablemente porque lo que quiero es un valor escalar mientras que PIG maneja conjuntos de datos? Supongo que puedo crear una fila con un campo que es la suma? ¡Por favor avise!Cómo calcular la suma de un campo en todas las filas de un alias

+1

encontré una respuesta, pero no tiene suficiente reputación para responder mi propia pregunta en 8 horas después de la publicación. Agregaré mi respuesta más tarde esta noche. – kee

Respuesta

13

Esto se puede lograr usando un GRUPO ALL para poner todo en un solo grupo, y luego la función SUMA para sumar todos los campos:

DESCRIBE a 
a: (name, age, height) 

b = GROUP a ALL; 
c = FOREACH b GENERATE SUM(a.age); 
+0

Exactamente. Eso fue lo que encontré. ¡Gracias de cualquier manera! – kee

Cuestiones relacionadas