PIG 脚本 IF ELSE 语句

Posted

技术标签:

【中文标题】PIG 脚本 IF ELSE 语句【英文标题】:PIG script IF ELSE statement 【发布时间】:2016-03-03 15:31:18 【问题描述】:

pig脚本是否支持if-else语句

这是我想做的:

如果($NAME=='乔伊') 做点什么 别的 做点什么

这样可行吗?

谢谢

【问题讨论】:

复制***.com/questions/17669522/… 重复***.com/questions/18913764/… 【参考方案1】:

它被称为“Bincond”运算符

像这样的陈述:

(Price > 75 ? 'High':'Low')  

同样有效

用于处理空记录:

((Name is null or IsEmpty(Name)) ? ('unknown') : Name)

在带有别名的 foreach 语句中使用它们,例如:

A = load 'x/y/Price.csv' as (Name, Product, Price);
B = foreach A generate Name, Product, Price, (Price > 75 ? 'High':'Low') as Indicator;

dump B;

【讨论】:

【参考方案2】:

您可以使用条件运算符。例如

(Name=='Joey'? 'Yes':'No')

【讨论】:

【参考方案3】:

如果我理解正确(我昨天开始使用 pig latin),pig 没有 if-else 或 for 语句,您必须使用 python 或 java 来执行此操作,请参见此处:http://chimera.labs.oreilly.com/books/1234000001811/ch09.html

【讨论】:

以上是关于PIG 脚本 IF ELSE 语句的主要内容,如果未能解决你的问题,请参考以下文章

如何在 oracle sql 脚本中创建 if-then-else 语句?

在 if elif else 语句中具有逻辑与和 ors 的 Bash 脚本

shell脚本中的if中多条件语句如何写。

shell脚本编程

shell脚本编程-使用结构化命令(if/else)(转)

JS(脚本语言)后半部分语句:①if...else②switch:break