INFO-Hive脏数据排查及处理
更新时间: 2024-03-11 02:49:43
阅读 1206
功能说明
适用模块
数据传输
具体说明
因Hive表字段中存在回车、换行、空格等不可见字符经常导致任务报错或数据不符合预期,可通过以下脚本进行验证是否存在不可见字符:
--核查表tablename中col_name字段是否存在不可见字符;\\S+可匹配除\0以外所有不可见字符;
SELECT * FROM TABLENAME T WHERE T.COL_NAME RLIKE '\\s+' or T.COL_NAME RLIKE '\0';
如核查确实存在特殊字符,可在生成该表数据时通过regexp_replace函数进行剔除;
--剔除tablename中col_name字段中特殊字符;\\S+可匹配除\0以外所有不可见字符;
INSERT OVERWRITE TABLE TARGET_TABLE
SELECT REGEXP_REPLACE(T.COL_NAME,'\\s+','') FROM SOURCE_TABLE;
使用示例
作者:常惠渊
文档反馈
以上内容对您是否有帮助?