Hive零基础从入门到实战 入门篇(十七) HiveQL:语句顺序及逻辑执行顺序

目录

 

前言

1. 编写HiveQL的语句顺序

2. HiveQL的逻辑执行顺序


前言

了解HiveQL的语句顺序及逻辑执行顺序可以使我们编写效率更高的代码,并且减少错误,下面我们来分别详细介绍。

 

1. 编写HiveQL的语句顺序

所有语句的编写顺序为:select … from … where … group by … having … order by … 

具体语法如下,[ ]中的是可选项,当有一个或多个可选项的语句时,要按照以下顺序编写代码,否则会报错:

SELECT 列名
      [,aggregate_function(列名) AS num]
FROM 表名
[WHERE 列名 运算符 值 [AND 列名 运算符 值] [OR 列名 运算符 值] ]
[GROUP BY 列名]
[HAVING num 运算符 值 [AND 列名 运算符 值] [OR 列名 运算符 值] ]
[ORDER BY 列名 [desc] ];

 

2. HiveQL的逻辑执行顺序

HiveQL的逻辑执行顺序与编写顺序完全不同,并不是按照语句从左到右依次执行,而是大致按如下顺序执行:

from … where … group by …select … having … order by …

了解了这个执行顺序,就可以理解为什么WHERE、GROUP BY后面不能使用别名,而后面的HAVING、ORDER BY都可以使用别名了。因为SELECT执行后别名才能生效。

 


能看到这里的同学,就右上角点个赞顺便关注我吧,3Q~

你可能感兴趣的:(Hive零基础从入门到实战 入门篇(十七) HiveQL:语句顺序及逻辑执行顺序)