我正在进行一个条件检查,以确定袋子是否为空。包含多个映射数组。每当"info"为null或空时,我都想在其中放入一个伪映射值。因为在下一步中,我将对"信息"进行FLATTEN操作。
为什么我需要这个,因为FLATTEN中的空包会从我不想要的数据中删除完整的记录。
((info is null or IsEmpty(info)) ? {(['Unknown'#'unknown'])} : info) as info;
这是给我下面的编译错误吗?
2014-09-02 06:20:37978〔main〕错误org.apache.pig.tools.grunt.grunt-错误1000:解析过程中出错。在第70列第24行遇到":"。正在期待以下内容之一:"猫"。。。"清除"。。。"fs"。。。"sh"。。。"cd"。。。"cp"。。。"copyFromLocal"。。。
创建映射时似乎出现语法错误。有一种简单的方法可以使用TOMAP功能创建地图,您可以如下使用:
((info is null or IsEmpty(info)) ? {(TOMAP('Unknown','unknown'))} : info) as info;