-
Hive Load命令详解查看全部
-
hive内置函数查看全部
-
hive函数查看全部
-
select round (number, 取的位数); select ceil(number); select floor(number);查看全部
-
数据函数:round:四舍五入;ceil:向下取整;floor向上取整查看全部
-
select col_ from table order by col_ desc; ---desc升序/降序查看全部
-
set hive.groupby.orderby.position.alias=true;---开启序号;查看全部
-
HIVE的自定义函数(UDF)z; 可以直接应用于select语句,对查询结果做格式化处理后,再输出结果 HIVE自定义函数实现细节: 首先,我们要创建一个继承org.apache.hadoop.hive.ql.UDF的JAVA类 然后,需要实现evaluate函数,evaluate函数支持重载 创建好自定义函数后,我们需要把程序打成jar包,放到linux的hive服务器上 并且,进入hive客户端,添加jar包: add jar /root/training/udfjar/udf_test.jar 创建临时函数(用来指向JAR包): create temporary function <函数名> as 'JAVA类名'; 最后,可以在一条select语句中,直接调用自定义函数(会执行相应的mapreduce程序,调用我们的java类,完成特定的功能); select <函数名> from table; 销毁临时函数: drop temporary function <函数名>;查看全部
-
THrift 调用hive查看全部
-
7-2-3 需要用到的jar包,这些jar包在hive的lib目录下,或者hadoop的lib目录下都能找到查看全部
-
通过JDBC的方式操作hive hive --service hiveserver //启动hive远程服务,以便jdbc远程连接查看全部
-
HIVE子查询 hive只支持from和where子查询 select e.ename from emp e where e.deptno in (select e.deptno from dept d where d.dname='SALES' or d.dname='ACCOUNTING'); 注意的问题: -语法中的括号 -合理的书写风格 -hive中只支持WHERE和FEOM子句中的子查询 -主查询和子查询可以不是同一张表 -子查询的空值问题 select * from emp e where e.empno not in (select e1.mgr from emp e1); //如果子集合中不含有空值null,则可以使用not in //如果子集合中含有空值,则不可以使用not in,可以使用in #改进 select * from emp e where e.empno not in (select e1.mgr from emp e1 where e1.mgr is not null);查看全部
-
HIVE表连接 外连接: (在select语句中,所有没有包含在聚合函数中的列,都必须要出现在grouop by 子句的后面) #一般的等值连接 select d.deptno, d.dname, count(e.empno) from emp e, dept d where e.deptno=d.deptno group by d.deptno, d.dname; #外连接(左外连接,右外连接) 左外连接(当我们的连接条件不成立时,连接条件的左边的表依然可以包含在结果中) 右外连接(当我们的连接条件不成立时,连接条件的右边的表依然可以包含在结果中) #右外连接 select d.deptno, d.dname, count(e.empno) from emp e right outer jion dept d on (e.deptno=d.deptno) group by d.deptno, d.dname;查看全部
-
HIVE表连接(转换成mapreduce作业,提交到hadoop上) 等值连接(连接条件中为等号): select e.empno, e.ename, e.sal, d.dname //选择要查询的字段 from emp e, dept d //选择表,并取别名 where e.deptno=d.deptno; //条件是表e的deptno等于表d的deptno 不等值连接(条件中是不等号:>, <, !=): between and //含有边界,并且小值在前,大值在后 select e.empno, e.ename, e.sal, s.grade //选择要查询的字段 from emp e, salgrade s //选择表,并取别名 where e.sal between 2000 and 8000; //条件是表e的sal大于等于2000小于等于8000查看全部
-
HIVE之聚合函数以及表生成函数 聚合函数: 计数:count 求和:sum 最小值:min 最大值:max 平均值:avg >select count(*),sum(sal),max(sal),min(sal),avg(sal) from emp; //这里*代表所有列,count(*)表示对记录数进行计数操作 表生成函数: explode //把map集合,或者array中的元素单独生成一个行 >select explode(map(1, 'Tom', 2, 'Mary', 3, 'Mike'));查看全部
举报
0/150
提交
取消