吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1703|回复: 2
收起左侧

[其他转载] 【Flink】【笔记】hive查询语句之四个by实操笔记

[复制链接]
moocer 发表于 2020-7-23 10:39
-- order by 全局有序,只有一个reduce--1.使用 ORDER BY 子句排序--ASC(ascend): 升序(默认)--DESC(descend): 降序--2.ORDER BY 子句在 SELECT 语句的结尾
select *
from emp
order by sal desc;

-- 按照别名排序
-- 按照员工薪水的 2 倍排序
select e.ename, e.sal * 2 twosal
from emp e
order by twosal desc;
-- 多个列排序
-- 按照部门和工资升序排序
select *
from emp e
order by deptno, sal
--  每个 MapReduce 内部排序(Sort By
-- Sort By 每个reduce内排序,对结果集来说不是排序
-- 1.设置 reduce 个数
set mapreduce.job.reduces = 3;
-- 2
-- .查看设置 reduce 个数
set mapreduce.job.reduces;
-- .根据部门编号降序查看员工信息
select *
from emp e sort by e.empno desc;
-- 4 .将查询结果导入到文件中(按照部门编号降序排序
insert overwrite local directory '/opt/module/datas/sortby-result'
select *
from emp sort by empno desc;
-- 分 区排序( Distribute By
-- Distribute By
-- :类似 MR partition ,进行分区,结合 sort by 使用。
-- 注意, Hive 要求 DISTRIBUTE BY 语句要写在 SORT BY 语句之前。
-- 对于 distribute by 进行测试,一定要分配多 reduce 进行处理,否则无法看到 distribute by
-- 的效果。
-- 1 )先按照部门编号分区,再按照员工编号降序排序。
set mapreduce.job.reduces =3;
insert overwrite local directory '/opt/module/datas/distribute-result2'
    select *
from emp e distribute by e.deptno sort by empno;
--  Cluster By
--distribute by sorts by 字段相同时,可以使用 cluster by 方式。
-- cluster by
-- 除了具有 distribute by 的功能外还兼具 sort by 的功能。但是排序 只能是 升 序排
-- 序 不能指定 排序 规则 为 AS C 或者 DESC
select * from emp cluster by empno;
-- 等价于
select * from emp distribute by empno sort by empno;

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

啦啦啦听不见 发表于 2020-7-23 10:52
本帖最后由 啦啦啦听不见 于 2020-7-23 15:16 编辑

整理全部到一个文本在发出来吗,楼主
 楼主| moocer 发表于 2020-7-23 10:56
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 03:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表