我正在努力找出年龄在19岁到60岁之间的用户数量。下面是示例查询
loadtable = load '/user/userdetails.txt' using PigStorage(',') AS (name:chararray,age:int);
filteredvalues = filter loadtable by (age > 19 AND age < 60);
grouped = GROUP filteredvalues ALL;
count = foreach grouped generate COUNT(grouped);
我得到了以下错误“无效的标量投影:分组:一个列需要从关系中投影才能用作标量”
2条答案
按热度按时间yqyhoc1h1#
你必须计算filteredvalue而不是分组。
jucafojl2#
示例userdetails.txt:
代码:
always count在group relation或bag之前执行,否则抛出:“invalid scalar projection:grouped:需要从关系中投影列才能用作标量”