HiveSelect操作

条件限制select into_从零开始学习大数据系列(五十九)Hive的SELECT查询 [字数4500左右,阅读预计10~30分钟,实操预计20分钟]在前面的文章里,我们了解到Hive提供了丰富的SQL查询方式来分析存储在Hadoop分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL去查询分析需要的内容,这套SQL简称HQL,使不熟悉MapReduce的用户很方... 阅读详情

保存select查询结果的几种方式

1.将查询结果保存到一张新的hive表中create table t_tmp
as
select * from t_p;2将查询结果保存到一张已经存在的hive表中

eg:(into 增量增加)
insert into table t_tmp
select * from t_p;

#-----------------------------------------------------
eg:(overwrite 覆盖增加)
insert overwrite table ol_oitf_interface_auc_dimension_value_business
select *
  from tmp_auc_dimension_value_business_new;

3.将查询结果保存到指定的文件目录(可以是本地,也可以是HDFS)

insert overwrite local directory '/home/hadoop/test'
select * from t_p;
#---------------------------------------------------
#插入HDFS
insert overwrite directory '/aaa/test'
select * from t_p;

Group By操作

GROUP BY子句的语法如下:

SELECT [ALL | DISTINCT] select_expr, select_expr, … FROM
table_reference [WHERE where_condition] [GROUP BY col_list] [HAVING
having_condition] [ORDER BY col_list]] [LIMIT number];eg: SELECT
pageid, age, count(1) FROM pv_users GROUP BY pageid, age;

具体实现过程如图:

23333333333

实例:
presto:default> select *from(
             -> select one_department,
             ->   two_department,
             ->   three_department,
             ->   four_department,
             ->   five_department ,count(*) as num  from tmp_kn1_ehr_person_organization_20180817 where one_department is not Null group by one_department,
             ->   two_department,
             ->   three_department,
             ->   four_department,
             ->   five_department ) t2 where t2.num>1 limit 5;

2334444

Group By sum 计算

表数据:
    presto:default> select *from tab4 order by id1;
     id1  | size | name 
    ------+------+------
        1 |   10 | AAA  
        2 |   20 | BBB  
        3 |   30 | DDD  
        3 |   30 | CCC  
        4 |   40 | NULL 
        8 | NULL | HHH  
       99 | NULL | TTT  
     NULL | NULL | EEE  
     NULL |   76 | HHH  
    (9 rows)

33333333333333

计算 size 的总数
222333333
22222222222222

Group By 排列组合

表语句 (查询tab4):
    presto:default> select id1,size,name from tab4 group by id1,size,name order by id1;
     id1  | size | name 
    ------+------+------
        1 |   10 | AAA  
        2 |   20 | BBB  
        3 |   30 | DDD  
        3 |   30 | CCC  
        4 |   40 | NULL 
        8 | NULL | HHH  
       99 | NULL | TTT  
     NULL | NULL | EEE  
     NULL |   76 | HHH  
    (9 rows)
tab4 分组:
    presto:default> select id1,size from tab4 group by id1,size order by id1;
     id1  | size 
    ------+------
        1 |   10 
        2 |   20 
        3 |   30 
        4 |   40 
        8 | NULL 
       99 | NULL 
     NULL | NULL 
     NULL |   76 
    (8 rows)
tab4 分组并 size列 赋值Null:
    presto:default> select id1,'null' as size from tab4 group by id1,size order by id1;
     id1  | size 
    ------+------
        1 | null 
        2 | null 
        3 | null 
        4 | null 
        8 | null 
       99 | null 
     NULL | null 
     NULL | null 
    (8 rows)
tab4 分组并 多出来一列 name 赋值Null: 
    presto:default> 
    presto:default> select id1,size,null as name from tab4 group by id1,size order by id1;
     id1  | size | name 
    ------+------+------
        1 |   10 | NULL 
        2 |   20 | NULL 
        3 |   30 | NULL 
        4 |   40 | NULL 
        8 | NULL | NULL 
       99 | NULL | NULL 
     NULL | NULL | NULL 
     NULL |   76 | NULL 
    (8 rows)
tab4 分组并 多出来一列 size 赋值Null:
presto:default> select id1,size,null as size from tab4 group by id1,size order by id1;
 id1  | size | size 
------+------+------
    1 |   10 | NULL 
    2 |   20 | NULL 
    3 |   30 | NULL 
    4 |   40 | NULL 
    8 | NULL | NULL 
   99 | NULL | NULL 
 NULL | NULL | NULL 
 NULL |   76 | NULL 
(8 rows)
tab4 分组并少一列 size :
presto:default> select id1 from tab4 group by id1,size order by id1;
 id1  
------
    1 
    2 
    3 
    4 
    8 
   99 
 NULL 
 NULL 
(8 rows)

类型转化 decimal()

create table tab5 as select res_pay_total,price_total,order_id,hotel_id,start_date from tmp_ol_dtfet_selftour_resales_date_go limit 10 union all 1.0000000000000000000000009 as res_pay_total, 2.00000000000009 as price_total,3 as order_id,5 as hotel_id,566 as start_date from dual;


Having


HIVE / KYLIN的日期函数 KYLIN: SELECT TIMESTAMPADD(DAY, -7, CURRENT_TIMESTAMP) -- 2021-04-17 17:48:25 SELECT TIMESTAMPADD(DAY, -7, CURRENT_DATE) --2021-04-17 SELECT (YEAR(TIMESTAMPADD(DAY, -7, CURRENT_DATE)) * 10000 + MONTH(TIMESTAMPADD(DAY, -7, CURRENT_DATE)) * 100 + DAYO 阅读详情

相关推荐

hive中间接实现不等值连接

由于hive中不支持不等值连接,给应用带来不便。 create tablelpx_test_a as select id,class from ( select 1 as id, 2 asclass from dual union all select 2 as id, 3 asclass from dual union all select 3 as id, 4 asclass...

lpxuan的专栏 2194

Hive select查询 简单函数

摘要:select复杂查询 日期函数 数学函数 字符串函数

分享~ 961

【大数据Hive】hive select 语法使用详解

hive 查询语法使用详解

congge_study的博客 7756

Hive查询基础(SELECT)

转载自 lxw1234@qq.com的博客 在所有的数据库系统中,SELECT语句是使用最多,也最复杂的一块,Hive中的查询语句SELECT支持的语法当然也比较复杂,本文只能尽力去介绍。 基础查询语法 Hive中的SELECT基础语法和标准SQL语法基本一致,支持WHERE、DISTINCT、GROUP BY、ORDER BY、HAVING、LIMIT、子查询等; 语法如下: [WITH Com...

tinysakura的博客 1378

Cadence创建异形焊盘教程(详细操作)

背景:一些常见的矩形/圆形焊盘,设置参数就可。碰到非规则的一些焊盘,那只能用Cadence Allegro PCB来画咯。 一、新建图形 【File】——>【New…】 弹出如下窗口,选择绘制的类型Shape symbol、路径,输入名字 二、设置参数 【Setup】——>【Design Parameters…】 Enhanced display modes:增强型显示模型。全部勾选上。 在【Design】设置单位为mm 设置偏移量(-50,-50) 三、绘制图形 1、找到原点,即参考

qq_42057393的博客 2万+

【文本分析学习】Anaconda+pytorch虚拟环境下的pycharm文本分析(含分词、词性标注、词形归一化、停用词、文本情感分析、词频、文本相似度,附数据代码) NLTK

文本分析学习之 Anadconda+pytorch虚拟环境下的pycharm文本分析(含分词、词性标注、词形归一化、停用词、文本情感分析、词频、文本相似度,附数据代码)

littlexmj的博客 2333

学习笔记-Hive select结构

学习笔记-Hive select结构 更多内容移步公众号: 1. Select语句结构 SELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list] [HAVING having_condition] [CLUSTER BY col_list | [DISTRIBUTE BY col_list] [SORT BY col_list]

thatdanielyang的博客 1212

ITIL-IT运维管理-概述

ITIL-IT运维管理-概述 概述 IT服务管理(ITSM)是一套帮助企业对IT系统的规划、研发、实施和运营进行有效管理的方法,是一套方法论。ITSM起源于ITIL(IT Infrastructure Library,IT基础架构标准库),ITIL是CCTA(英国国家电脑局)于1980年开发的一套IT服务管理标准库。它把英国在IT管理方面的方法归纳起来,变成规范,为企业的IT部门提供一套从计划、研发、实施到运维的标准方法。 中文名 IT服务管理 外文名 ITService Management 专家

syjhct的博客 4万+

Impala 代替 hive COLLECT_SET函数的方式

背景 之前是在HIVE上开发,GROUP BY 某些字段后,其他字段使用COLLECT_SET(ITEM)[0]的方式取相同字段值中的一个,而在Impala上没有COLLECT_SET函数。 方案 使用GROUP_CONCAT函数+SPLIT_PART函数替代 ## IMPALA SELECT SCORE,SPLIT_PART(GROUP_CONCAT(NAME),',',1) FROM TE...

maenlai0086的博客 3600

【模型】OpenClaw 接入阿里云永久免费模型方案

Qwen2.5-7B-Instruct 模型为例。

海兰 4473

电源芯片MPQ3431A

MPQ3431A是一款具有宽输入范围的固定频率为450kHz的高度集成的升压转换器,其输入电压低至2.7V,采用恒定关断时间(COT)的控制拓扑,可提供快速的瞬态响应。芯片支持通过MODE管脚配置PSM(pulse-skip mode)、FCCM(forced continuous conduction mode)和USM(ultrasonic mode);还支持通过电流限制配置来达到精确的过流保护;同时芯片欠压保护(UVLO)和过温保护(OTP)。MPQ3431A采用QFN-13(3mmx4mm)封装。保

qflook的博客 1560

Hive 编程之DDL、DML、UDF、Select总结

  Hive的基本理论与安装可参看作者上一篇博文《Apache Hive 基本理论与安装指南》。 一、Hive命令行   所有的hive命令都可以通过hive命令行去执行,hive命令行中仍有许多选项。使用$hive -H查看:   -e 选项后面可以直接接一个hql语句,不用进入到hive命令行用户接口再输入hql语句。   -f 选项后面接一个hql语句的文件。   -i 选项在hql语句执...

Huidoo_Yang 818

从苏宁电器到卡巴斯基(第二部)第01篇:我在卡巴的日子 I

聊聊行业薪酬 我相信不论是谁,如果是入职一家新的公司,那么他最想知道的一件事情就是待遇情况了。这里既包含每月实际能到手多少钱,又包括五险一金是否齐全以及是按照高标准还是低标准缴纳。另外,如果是入职IT公司,还会在意年终奖有多少,毕竟某些富裕的IT企业,每到年末就会以此制造新闻来博取大家的关注,以彰显自身的实力。 一言以蔽之,待遇问题也就是年收入究竟会有多少,也是我们进入职场的人喜欢相互打听的问题。比如我研究生那届最厉害的一位同学,签了A公司的算法岗位,年薪30W+(税前,下同),在当时的我看来就是天价了

Gleam的专栏 1225

Mysql、Oracle、Hive中SUM(null)和COUNT(null)

Mysql、Oracle、Hive中SUM(null)和COUNT(null)

Liu_Arvin的芝士小栈 7950

黑猫带你学UFS协议第13篇:UFS初始化详解(Boot Operation)

本文详细解析了UFS设备的初始化过程,包括部分初始化、加载启动代码(可选)和初始化完成三个阶段。重点介绍了如何通过设备描述符和逻辑单元描述符配置引导特性,以及如何从UFS设备加载启动代码。内容适用于嵌入式硬件和存储领域的开发者。

黑猫奥利奥的博客 3555

Android HAL 架构详解,底层开发不再难

HAL Binder 这套机制牛在哪?性能:一次拷贝,快如闪电。规范:HIDL 让接口定义整齐划一,维护省心。兼容:版本管理做得好,新老设备都能跑。有了这套通信体系,HAL 就像打了通脉,上下贯通,硬件操作变得丝滑无比。通信机制搭好了桥,接下来 HAL 得真正把手伸到硬件上。这部分是 HAL 的 “最后一公里”,直接决定硬件能不能被用起来。HAL 的接口定义是整个体系的灵魂,它决定了上层和底层怎么 “说话”。

大模型大数据攻城狮的专栏 1673

oracle和hive的语法差异

Oracle与HiveSQL在语法上存在显著差异。Oracle作为关系型数据库,支持完整的事务处理、约束和丰富的数据类型;而Hive作为Hadoop数据仓库工具,更注重批量处理能力。主要差异体现在:DDL方面,Hive需要指定数据格式且不支持约束;DML方面,Hive对更新/删除支持有限;函数方面,两者在字符串处理、日期函数等语法不同;高级查询上,Hive缺少Oracle特有的分层查询功能。此外,Hive的数据类型与Oracle存在映射关系,性能优化方式也不同。迁移时需注意语法转换和性能调优。

m0_73461074的博客 490

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

impala和hive语法的区别

最近在工作中遇到了一些语句在impala可以执行但hive不支持的情况,内容如下: hive的date_sub函数对应impala的days_sub函数 hive不支持add_years函数,只支持add_months函数 hive的TIMESTAMP对应impala的to_TIMESTAMP函数 hive的FROM_UNIXTIME函数要求参数必须是'yyyy-MM-dd HH:mm:s...

u012852188的博客 3677

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

hive把字符串转换为时间_Hive 中 时间戳,字符串转换

13位时间戳装换为日期格式的字符串select from_unixtime( cast(1597651229344/1000 as int),'yyyy-MM-dd HH:mm:ss')时间字符串比较大小Mysql使用函数:STR_TO_DATE(str, format)使用示例:select*fromh_hotelcontextwherenow()betweenSTR_TO_DAT...

weixin_39662228的博客 6166

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

数据治理之安装DSS和LINKIS,QUALITIS过程中遇到的问题汇总

直接上干货,有不足之处,各路大神请留言! A.安装python后,还想安装画图模块,执行如下命令后报错 [root@cdh03 ~]# python -m pip install matplotlib /usr/bin/python: No module named pip 解决方法: wget https://bootstrap.pypa.io/get-pip.py 然后运行 [root@cdh03 mxc]# python get-pip.py DEPRECATION: Python 2.7 reach

weixin_51485976的博客 7658

Hive基础

Hive基本概念

Amateur_engineer的博客 848

SQL知识点

--mysql索引和键:键的范围更大[物理约束,逻辑索引];索引[逻辑索引] ALTER TABLE `table_name` ADD INDEX `index_name` ( `column` );-- 添加索引 DROP INDEX `index_name` ON `table_name`;-- 删除索引 ALTER TABLE `table_name` ADD UNIQUE KEY `ind...

穿越整个城市的越野跑 457

Impala 不支持 hive COLLECT_SET函数的方式

现象: Impala 不支持 hive COLLECT_SET函数的方式 背景 之前是在HIVE上开发,GROUP BY 某些字段后,其他字段使用COLLECT_SET(ITEM)[0]的方式取相同字段值中的一个,而在Impala上没有COLLECT_SET函数。 方案 使用GROUP_CONCAT函数+SPLIT_PART函数替代 ## IMPALA SELECT SCORE,SPLIT_PART(GROUP_CONCAT(NAME),',',1) FROM TEST.STUDENT GROUP BY

qq_43688472的博客 1336

Trino 与Hive 有差异的函数

日常使用中发现trino和hive中的有一些函数存在差异,所以开此帖记录一下。

ChengYanan的博客 2055

一个flink+kafka+hive示例

版本:Flink 1.13.1 ,Hive 2.1.1 进入flink解压目录 bin/yarn-session.sh -nm testFlink2Hive -d -qu root.test -jm 1024 -tm 1024 bin/sql-client.sh embedded SET execution.checkpointing.interval = 12h; CREATE CATALOG myhive WITH ( 'type' = 'hive', 'default-datab

zhangs_123的博客 2123
上一篇: HiveJoin操作
下一篇: HiveTable操作命令
piepis
博客等级 码龄10年 104粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

piepis

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值