apache pig-如何获取flop10数据记录?

cxfofazt  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(341)

我有这样的数据记录:

Name          customerID revenue(Mio) premium          
Michael James 078932832  2.7          y
Susan Miller  024383490  3.9          n
John Cooper   021023023  2.1          y

如何获得收入最低(=flop 10)的记录(分为高级标志)?
结果如下:

Nr Name          customerID revenue(Mio) premium          
1  John Cooper   021023023  2.1          y
2  Michael James 078932832  2.7          y
3  Andrew Murs   044834399  3.0          y
.  ...           .....      ...          .
10 th entry      with       flag         y

1  Susan Miller  024383490  3.9          n
.  ...           .....      ...          .
10 th entry      with       flag         n

如您所见,列表按升序排列(从最低收入开始)。

ql3eal8s

ql3eal8s1#

我想你应该用split,因为a是你的load语句

A = load 'data' as (Nr,Name,customerID,revenue,premium);
B = split A into PRE if premium =='y', NONPRE if premium == 'n';
C = order PRE by revenue asc;
D = order NONPRE by revenue asc;

免责声明:使用split时要小心,因为会删除空记录。我没有编译这个代码。

相关问题