HIVE
帅成一匹马
这个作者很懒,什么都没留下…
展开
-
hive中时间函数 YYYY和yyyy,MM和mm,HH和hh 区别
hive sql原创 2023-03-09 16:18:09 · 1958 阅读 · 0 评论 -
关于MySQL中datetime和timestamp的区别
关于MySQL中datetime和timestamp的区别1 MySQL的日期类型简介 2 datetime和timestamp的区别 3 总结在MySQL中一些日期字段的类型选择为datetime和timestamp,那么对于这两种类型不同的应用场景是什么呢转载 2022-04-24 10:57:53 · 14793 阅读 · 0 评论 -
hive报错:hive.ql.exec.vector.VectorMapOperator(向量化查询)
报错信息:Runtime Error while processing row at org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.process(VectorMapOperator.java:52)解决方案:关闭向量化查询set hive.vectorized.execution.enabled=false;set hive.vectorized.execution.reduce.enabled=false;转载 2022-04-14 17:35:56 · 2523 阅读 · 0 评论 -
HIVE使用unix_timestamp函数提示unix_timestamp(void) is deprecated. Use current_timestamp instead.
结论:使用select date_format(current_timestamp,'yyyy-MM-dd HH:mm:ss') 代替select from_unixtime(unix_timestamp(), 'yyyy-MM-dd HH:mm:ss')。总结:以后还是尽量不用官方弃用的函数。今天在迁移项目时,发现HIVE中unix_timestamp得到的时间在测试环境和线上环境不一致,相差8小时。使用select from_unixtime(unix_timestamp(), '...转载 2022-04-07 13:56:51 · 1120 阅读 · 0 评论 -
hive严格模式下如何使用笛卡尔积?
首先,了解什么是笛卡尔积,笛卡尔积就是大多数情况下在我们没有注意的情况下产生了错误的关联条件,然后造成了笛卡尔积,如下图在hive严格模式下,是不允许笛卡尔积的操作的,因为在大数据领域笛卡尔积的存在会产生很大的数据量暴增,对于集群的伤害很大。但是如果在严格模式下必须要使用到笛卡尔积怎么办?案例:表A中有一条数据,是jn1表的班主任,表A中只有一个字段,现要把这条记录加入到jn1中1、非严格模式下使用笛卡尔积有三种方式方式1:select * from jn1,scri;方式转载 2022-04-07 10:42:01 · 1134 阅读 · 0 评论 -
replace into 与insert into 区别
新建一个test表,三个字段,id,title,uid, id是自增的主键,uid是唯一索引;CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) DEFAULT NULL, `uid` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `sss` (`uid`)) ENGINE=InnoDB DEFAULT原创 2022-01-28 14:51:13 · 974 阅读 · 0 评论 -
Hive函数积累,持续更新
1、删除分区1)删除一个分区数据ALTER TABLE table_name DROP PARTITION (dt='20200909');2)删除多个分区数据ALTER TABLE table_name DROP PARTITION (dt >="20200901",dt <='20200930')3)删除多字段分区ALTER TABLE table_name DROP PARTITION (dt='2020901', hour='10');...原创 2022-02-23 10:54:48 · 756 阅读 · 0 评论 -
Hive的严格模型(Strict mode)
对分区表进行查询,若在where子句中没有加分区的话,将禁止提交任务。把属性值进行设置.默认值是没有开启的。默认是nonstrict查看hive是否开启严格模式set hive.mapred.mode说明:在敲击命令过程中可以使用tab键补齐。设置为严格模式set hive.mapred.mode=strictset hive.mapred.mode=strict;说明:使用严格模式可以机制3种类型的查询。1、对于分区表,不加分区字段进行查询,不能执行。2.转载 2022-02-25 14:14:27 · 584 阅读 · 0 评论 -
hive插入多行数据(硬编码)
insert into table 表名select 1,2,3union allselect 4,5,6union allselect 7,8,9原创 2021-12-03 11:34:48 · 4187 阅读 · 0 评论 -
hive实现全自动动态分区--案例详解
需求:删除s_ls_yijj_syjglj_yhxx中所有分区中HD_FIND_DATE字段大于当前系统日期的数据删除1.开启动态分区,并设置参数 #--开启动态分区,默认是false (可通过这个语句查看:set hive.exec.dynamic.partition;) set hive.exec.dynamic.partition=true; #--开启允许所有分区都是动态的,否则必须要有静态分区才能使用,默认是strict set hive.exec....原创 2021-10-13 18:07:47 · 2394 阅读 · 0 评论 -
Replace columns is not supported for table,SerDe may be incompatible.
ERROR : FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Replace columns is not supported for table hw_dwsdb.dws_student_classroom_homework_statistics. SerDe may be incompatible.INFO : Completed executing command(queryI.原创 2021-09-26 11:06:36 · 1623 阅读 · 0 评论 -
Hive_SQL_计算同时最大在线人数
题目假设我们的业务场景是回溯某一天的某游戏的最大同时在线人数,并有表connection_detail记录用户每一次上线和下线时间:user_id login_time logout_time dt 213142 2019-01-01 12:21:22 2019-01-01 13:45:21 20190101 412321 2019-01-01 13:35:11 2019-01-01 16:01:49 20190101 … …转载 2021-08-17 15:49:10 · 2602 阅读 · 2 评论 -
left join中关联键为NULL时处理方式
表t1表t2表t1 left join 表t2select * from t1 left join t2 on t1.id=t2.id原创 2021-04-21 11:55:45 · 621 阅读 · 0 评论 -
Hive中三种排序函数的区别
排序函数RANK() 排序相同时会重复,总数不会变DENSE_RANK() 排序相同时会重复,总数会减少ROW_NUMBER() 会根据顺序计算案例演示1.原始数据name subject score孙悟空 语文 87孙悟空 数学 95孙悟空 英语 68大海 语文 94大海 数学 56大海 英语 84宋宋 语文 64宋宋 数学 86宋宋 英语 8原创 2021-03-14 20:22:01 · 1139 阅读 · 0 评论 -
hive中时间类date函数
1. 日期格式化函数 :date_format(string date,输出格式)返回值: string说明: 对给定的字符串日期进行格式化。举例:hive> select date_format(current_date,'yyyy-MM-dd HH:mm:ss');返回结果 2021-03-14 00:00:00hive> select date_format('2019-06-29','yyyy-MM');返回结果 2019-06hive> sel...原创 2021-03-14 18:22:03 · 8919 阅读 · 0 评论 -
hive sql 中容易出错的点记录
1. group by 后接多个字段,表示将多个字段看作一个整体进行分组,各字段之间并无先后顺序。2. hive sql执行顺序 : group by>selectfrom ..on .. join .. where .. group by .. having .. select .. distinct .. order by..limit未完待续.........原创 2021-03-14 17:57:25 · 319 阅读 · 0 评论 -
hive sql 语句正确执行顺序
执行顺序:from ..on .. join .. .. where .. select .. group by .. having .. order by... limit ...map阶段from 加载,进行表的查找和加载 where过滤 select查询Reduce阶段group by :对map端发来的文件进行分组合并 order by : 对结果进行排序 limit 控制结果输出的行数案例:select dt, user_id, min(age)..原创 2021-03-14 16:52:17 · 8286 阅读 · 5 评论 -
sum(…) over(…) 连续求和分析函数
原表sum(mn_count) over( )sum(mn_count) over( partition byuserId)sum(mn_count) over( order by mn)sum(mn_count) over( partition byuserIdorder by mn)原创 2021-03-14 12:31:57 · 3748 阅读 · 2 评论 -
Hive中反引号` ` 的作用
hive (default)> create table log(`line` string) ;注:语句中`line`加上反引号表示无论字段名line是否关键字都可以正常创建表格。原创 2021-02-21 16:50:02 · 2110 阅读 · 0 评论 -
hive的UDF实现类似oracle的decode函数功能
要求 : 让用hive实现类似orale的decode函数功能。 Oracle的decode函数语法:DECODE(value,if1,then1,if2,thne2,if3,then3,...else)。 首先涉及到的问题是输入参数的动态化,decode函数要求输入函数是偶数个,然后实现类似if,else的逻辑判断功能。这样的话用到了java的Object ... args 来传入多个参数,然后在方法中检测个数是否符合偶数个。选用Object类型的原因就是为了参数类型的动态识别。...转载 2021-02-08 16:01:47 · 1751 阅读 · 0 评论