课程表

Apache Pig 基础

Apache Pig 诊断运算符

Apache Pig 分组和连接

Apache Pig 合并和拆分

Apache Pig 过滤

Apache Pig 排序

Pig Latin 内置函数

Apache Pig 其他执行模式

工具箱
速查手册

STARTSWITH()函数

当前位置:免费教程 » 大数据/云 » Apache Pig

此函数接受两个字符串参数。它验证第一个字符串是否以第二个开头。

语法

下面给出了 STARTSWITH() 函数的语法。

  1. grunt> STARTSWITH(string, substring)

假设在 HDFS 目录 /pig_data/ 中有一个名为 emp.txt 的文件,如下所示。此文件包含员工详细信息,如id,姓名,年龄和城市。

emp.txt

  1. 001,Robin,22,newyork
  2. 002,BOB,23,Kolkata
  3. 003,Maya,23,Tokyo
  4. 004,Sara,25,London
  5. 005,David,23,Bhuwaneshwar
  6. 006,Maggy,22,Chennai
  7. 007,Robert,22,newyork
  8. 008,Syam,23,Kolkata
  9. 009,Mary,25,Tokyo
  10. 010,Saran,25,London
  11. 011,Stacy,25,Bhuwaneshwar
  12. 012,Kelly,22,Chennai

通过使用 emp_data 关系将此文件加载到Pig中,如下所示。

  1. grunt > emp_data = LOAD 'hdfs://localhost:9000/pig_data/emp.txt' USING PigStorage(',')
  2. as (id:int, name:chararray, age:int, city:chararray);

以下是 STARTSWITH() 函数的示例。在此示例中,我们验证所有员工的姓名是否以子字符串“Ro"开头。

  1. grunt> startswith_data = FOREACH emp_data GENERATE (id,name), STARTSWITH (name,’Ro’);

如果任何这些名称以字符串'Ro'开头,上述语句将解析所有员工的名称。因为员工姓名'Robin''Robert'这两个元组以子串'Ro'开头,所以 STARTSWITH() 函数返回布尔值'true',剩余的元组的值将为'false'

语句的结果将存储在名为 startswith_data 的关系中。使用Dump运算符验证关系 startswith_data 的内容,如下所示。

  1. grunt> Dump startswith_data;
  2. ((1,Robin),true)
  3. ((2,BOB),false)
  4. ((3,Maya),false)
  5. ((4,Sara),false)
  6. ((5,David),false)
  7. ((6,maggy),false)
  8. ((7,Robert),true)
  9. ((8,Syam),false)
  10. ((9,Mary),false)
  11. ((10,Saran),false)
  12. ((11,Stacy),false)
  13. ((12,Kelly),false)
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号