我需要这个猪脚的帮助。我只是得到一个单一的记录。我选择了2列,并在另一个列上进行了计数(明显),同时还使用了where子句来查找特定描述(desc)。选择数不同使用猪拉丁文
这是我的SQL与猪我想编码。
/*
For example in sql:
select domain, count(distinct(segment)) as segment_cnt
from table
where desc='ABC123'
group by domain
order by segment_count desc;
*/
A = LOAD 'myoutputfile' USING PigStorage('\u0005')
AS (
domain:chararray,
segment:chararray,
desc:chararray
);
B = filter A by (desc=='ABC123');
C = foreach B generate domain, segment;
D = DISTINCT C;
E = group D all;
F = foreach E generate group, COUNT(D) as segment_cnt;
G = order F by segment_cnt DESC;
我认为是完美的应该是 unique_segments = DISTINCT C.segment; – 2014-02-03 15:23:30