Necesito ayuda con este script de cerdo. Solo estoy obteniendo un solo registro. Estoy seleccionando 2 columnas y haciendo un conteo (distinto) en otro mientras también uso una cláusula where like para encontrar una descripción particular (desc).seleccione count distinct usando pig latin
Aquí está mi sql con cerdo Estoy tratando de codificar.
/*
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;
Creo que es perfecto, debería ser unique_segments = DISTINCT C.segment; –