猪的IN条款

问题描述 投票:-2回答:1
user1,action,aa
user2,comedy,cc
user3,drama,dd
user4,action,aa
user5,action,aa
user6,comedy,cc
user7,action,aa
user8,comedy,cc
user9,drama,dd
user10,action,aa
user11,action,aa
user12,comedy,cc

如果相应的角色来自(动作,喜剧),我想用'bb'替换所有'aa'。无法找到案例陈述支持或其他方法!

apache-pig
1个回答
0
投票

假设您的数据被加载到关系A,然后使用case语句检查$ 1的值,即关系A中的第二个字段,当它是'action'时,或者'comedy'用'bb'替换值'aa'或者否则使用默认值$ 2

B = FOREACH A GENERATE $0,$1,
               (CASE $1
                    WHEN 'action' OR 'comedy' THEN REPLACE($2,'aa','bb')
                    ELSE $2 END);
© www.soinside.com 2019 - 2024. All rights reserved.