文章目录
- Hive insert 字段表错位踩坑
- 1 问题描述
- 2 排查过程
- 3 问题定位
- 4 解决方案
- hive的insert语句列顺序问题以及新增字段遇到的坑
- insert语句列顺序
- 对新增字段插入数据再查询发现是NULL
Hive insert 字段表错位踩坑
1 问题描述
往 Hive 表 insert 数据后,查询时出现个别行字段错位,插入语句如下:
代码语言:javascript复制insert overwrite table A select col1,col2,col3 from table B where dayid = '';
首先测试源表数据查询:
代码语言:javascript复制select col1,col2,col3 from B
查询来的数据没发现有什么异常;照理说逐字段查出来没问题,再逐字段插入应该不会错位。实际上 hive 的 insert 跟想象中传统的 insert 不太一样。
2 排查过程
由于不是全表错位,而是个别行错位,首先根据关键字查询 hive 错位那行数据,导出文本到本地。肉眼查看发现有部分"乱码"(异常字符: ^M
,如果经验丰富一眼就能看出这个是