![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hive
程序媛三妹
VX: cxysanmei1024 同名公众号和知乎:程序媛三妹,请多指教呀
一个希望不断进化的姑娘~
展开
-
hive 删除某个分区中部分数据
目录一、需求二、思路三、补充一、需求删除 hive 表中某个分区中的部分数据(不是删除该分区)二、思路1、数据库删除数据的本质其实是用新的数据去覆盖原有的表,只要新的数据中不含有你想删除的数据,就达到了删除的目的。所以删除的语法是:insert overwrite2、删除分区表更复杂的一点是,要带上分区的限制:insert overwrite table sanmei_db.sanmei_example partition(dt='2020-12-18')原创 2020-12-01 20:35:58 · 9922 阅读 · 5 评论 -
hive删除表中部分数据
一、无分区表insert overwrite table table_nameselect * from table_name where ...;可以看出,删除的本质就是覆盖,选出符合条件的结果重新写表。二、有分区表1、删除某个分区alter table table_name drop partition(dt='2020-09-02');目的是将分区为 2020-09-02 的数据全部删掉,即删除整个分区。2、删除某个分区中的一部分数据insert overwri原创 2020-09-02 13:45:42 · 6700 阅读 · 0 评论 -
Hive 字符串截取前两位和截取后两位
一、需求截取 ID 字段前两位和去掉后两位二、实现使用 Hive 中 substr() 函数来实现。1、截取前两位:substr(ID,0,2)substr() 第一个参数表示待截取的字段名称,第二个参数表示截取的起始位置,第三个字段表示截取的长度。2、截取后两位:substr(ID,-2,2)表示从倒数第二个位置开始截取两位,即截取后两位。以上,问题解决...原创 2020-04-09 09:38:35 · 32410 阅读 · 2 评论 -
Hive 建库,删库,显示所有库,显示当前库
建库:create database 库名;删库(注意不要删掉别人的库):drop database 库名;显示所有库(注意该命令中 databases 是复数):show databases;显示当前库:select current_database();注意:数据库的其他元数据信息都是不可更改的,包括数据库名和数据库所在的目录位置。...原创 2020-03-12 10:09:39 · 1313 阅读 · 0 评论 -
脚本实现:从 HIVE 中导入数据到 MYSQL
代码如下:import osimport pymysql# -- SELECT * from wwh_db.zy_avg_ctr_sort where dt = '{}';hive_sql = """beeline -u jdbc:hive2://10.5.145.113:10000 -n 用户名 -p 密码 --showHeader=false --outputformat=c...原创 2020-03-04 21:23:02 · 1069 阅读 · 0 评论 -
hive 建表快捷方式
之前写过一篇如何将 Oracle 表导入 hive 表。https://blog.csdn.net/u011675334/article/details/102504953今天讲一个更为快捷的方式。假设已经建好一个临时表,但是要给该表按日期建立分区,就可以复用该表的格式。首先执行命令:show create table test.template;弹出结果如下:CREA...原创 2020-02-14 11:04:42 · 360 阅读 · 0 评论 -
Hive:Error while compiling statement: FAILED: ParseException cannot recognize input near '<EOF>' '<
一、Hive SQL 报错如下:Error: Error while compiling statement: FAILED: ParseException line 79:17 cannot recognize input near '<EOF>' '<EOF>' '<EOF>' in subquery source (state=42000,code=4...原创 2019-12-16 15:05:42 · 18377 阅读 · 0 评论 -
HIVE: create table 与 create external table 区别
内部表与外部表的不同创建外部表需要添加 external 字段。而内部表不需要。 删除外部表时,HDFS中的数据文件不会一起被删除。而删除内部表时,表数据及HDFS中的数据文件都会被删除。...原创 2019-10-16 13:35:18 · 9265 阅读 · 0 评论 -
导入hive表Error: Error while compiling statement: FAILED: SemanticException No files matching path file
将 CSV 文件导入 hive 表时报错:0: jdbc:hive2://10.5.145.113:10000> load data local inpath '/DATA/hdfs/example.csv' into table db.example_table;Error: Error while compiling statement: FAILED: SemanticExce...原创 2019-10-15 13:26:51 · 14662 阅读 · 3 评论 -
Oracle 表导入 Hive 表
一、需求需要的数据在两个不同 Oracle 数据库中, 且其中一个数据库中的内容有一份一模一样的存在 hive 表中。二、解决办法将另一个 Oracle 表存入 hive 表中。具体实现:1. 将 Oracle 数据导出 CSV 文件:oracle_example.csv,并上传至服务器 /DATA 路径下;2. 先根据原始 Oracle 表结构在 hive 中建立一个新表...原创 2019-10-11 17:08:44 · 957 阅读 · 0 评论 -
Beeline -e 写 CSV 文件乱码
在使用 beeline -e 导出结果到 CSV 文件时出现如下格式:+-----------------------------------------+|A |11 |1.0 |nan nan|B |11 |6.0 |nan nan|C |11 |10.0 |...原创 2019-09-19 13:44:41 · 1244 阅读 · 0 评论 -
Hive 报错:Error: Error while compiling statement: FAILED: ParseException line 1:7 Failed to recognize
执行hive SQL 语句“select out from XXX ” 时报错如下:Error: Error while compiling statement: FAILED: ParseException line 1:7 Failed to recognize predicate 'out'. Failed rule: 'identifier' in table or column ...原创 2019-09-12 14:55:58 · 34483 阅读 · 0 评论 -
Hive beeline初次使用
今日份工作填坑。工作上说从今天开始要用 beeline 的方式输入账号密码访问 hive,之前写的定时脚本都要改一改。1、本次主要将 hive -e命令部分改为:beeline -u jdbc:hive2:// * . * . * . * :*-n 用户名 -p 密码 -e2、执行语句 beeline -u jdbc:hive2:// * . * . * . * :*-...原创 2019-09-04 20:18:16 · 1779 阅读 · 0 评论