Max

2016-03-21 27 views
0

BenMax

bana max değeri aldığı, tarif edildiği gibi

x = LOAD 'file:///a/b/c.csv' USING PigStorage() AS (a: int, b: int, c: int); y = FOREACH x GENERATE a AS a: int, b AS b: int, c AS c: int, MAX(TOBAG(a, b, c)) AS g: int;

yaptılar Pig equivalent of SQL GREATEST/LEAST?

soruyu takip (Müthiş Btw!). Değerin orijinal olarak (a, b veya c) hangi sütunun olduğunu nasıl anlayabilirsiniz?

cevap

0

Basit bir yöntem olabilir:

z = FOREACH y GENERATE 
     a, 
     b, 
     c, 
     g, 
     CASE WHEN 
     g==a THEN 'a' 
     g==b THEN 'b' 
     g==c THEN 'c' 
     END as 'which_column';