这篇文章主要讲解了“Hive HQL支持的查询语句风格有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Hive HQL支持的查询语句风格有哪些”吧!背景在平时业务运营
这篇文章主要讲解了“Hive HQL支持的查询语句风格有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Hive HQL支持的查询语句风格有哪些”吧!
在平时业务运营分析中经常会提取数据,也就是大家俗称的sql Boy,表哥表姐,各大公司数据中台现在大部分用的都是基于hadoop的分布式系统基础架构,用的比较多的有Hive数据仓库工具,数据分析师在数据查询时用的就是HQL,语法与Mysql有所不同,基本每天都会写大量的HQL语句,但你有试过哪些风格的写法呢?哪种风格的查询语句更容易理解呢?可能不同的人有不同的看法,下面展示具体的风格代码样式,看看你喜欢哪种
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统( Distributed File System),其中一个组件是hdfs(Hadoop Distributed File System)
hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成mapReduce任务来执行。
这种风格大家都比较常用,从结果向源头倒着推,直接多层嵌套,一层一层往里面写,业务逻辑复杂的话有可能写很多层,达到几百行之多,目前很多公司在有数仓的支持下,基本嵌套的层数会比较少
select *from( (select * from a_temp where xxxx group by xxxx) as a left join (select * from b_temp where xxxx) as b on a.id=b.id) tempwhere xxxxgroup by xxxxorder by xxxx
with a as(select * from a_temp where xxxx group by xxxx), b as(select * from b_temp where xxxx)select *from a left join b on a.id=b.idwhere xxxx group by xxxxorder by xxxx
这种风格是利用 with
语句,从源头向结果正向推,可以把 with
语句理解为建立了一个临时视图/表一样,后面的表引用前面的表,逻辑是正向推进
风格一:用的最多,从结果向源头倒着推
风格二:容易理解,从源头向结果正向推
感谢各位的阅读,以上就是“Hive HQL支持的查询语句风格有哪些”的内容了,经过本文的学习后,相信大家对Hive HQL支持的查询语句风格有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!
--结束END--
本文标题: Hive HQL支持的查询语句风格有哪些
本文链接: https://www.lsjlt.com/news/341783.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-09
2024-05-09
2024-05-09
2024-05-09
2024-05-09
2024-05-09
2024-05-09
2024-05-09
2024-05-09
2024-05-09
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0