insert 导入 hive和中文乱码问题导入CSV格式的数据到hive表格

导入CSV格式的数据到hive表格和insert 导入 hive,中文乱码问题

一、insert 插入数据中文乱码
hive写入数据的方式有三种,最为熟知的insert ,但是在用insert 单句执行的时候,中文导入是会出现乱码的,我试了网上大家给出来的解决方法,好像都不行,最后终于找到了一个方法

insert overwrite table mergeflie select 1,decode(binary('维护'),'utf-8'),18;

用这个语句就可以解决insert插入数据中文乱码的问题
在这里插入图片描述
二、导入csv格式的数据到hive表格
但是,假如数据很多的时候,我们这样插入不太方便。可以把数据编辑成csv的格式,直接导入hive的表格中。
首先在hive里面创表

create table if not exists ods.mergeflie(
id string,
name string,
age int
)row format delimited fields terminated by ','
lines terminated by '\n';

然后把本地的csv文件上传到hdfs相对于hive表的文件夹下

hdfs dfs -put /export/datas/mergeflie.csv /user/hive/warehouse/ods.db/mergeflie/

/export/datas/ 这个路径是我Linux上放文件的路径,
/user/hive/warehouse/dldev.db/这个路径是hive中ods层在hdfs上存放表的路径
然后在hive的ods层查询这个表,就会有数据了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值