Hive 公用表表达式 CTE 使用指南

Posted @SmartSi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive 公用表表达式 CTE 使用指南相关的知识,希望对你有一定的参考价值。

1. 概述

Common Table Expression(公用表表达式),简称 CTE,由 WITH 子句中指定的简单查询派生的临时结果集,用于简化 SQL。CTE 默认是不对数据进行物化,即相当于视图,只是为一个 SQL 语句定义了一个变量,每次使用这个 SQL 语句时只需要这个 SQL 变量即可。开发过程中结合 CTE,可以提高 SQL 语句可读性,便于轻松维护复杂查询。

CTE 仅在单个语句的执行范围内定义。CTE 子句紧跟在 SELECT 或者 INSERT 关键字之前,可以在 SELECT、INSERT、CREATE TABLE AS SELECT 或者 CREATE VIEW AS SELECT 语句中使用一个或多个 CTE。

Hive 从 0.13.0 版本开始支持标准 SQL 的 CTE,具体细看使HIVE-1180。CTE 的出现可以更好地提高 SQL 语句的可读性与执行效率。

2. 语法

CTE 由表示 CTE 的表达式名称,AS 关键字以及 SELECT 语句组成。CTE 的基本语法结构如下所示:

WITH
  cte_name AS (cte_

以上是关于Hive 公用表表达式 CTE 使用指南的主要内容,如果未能解决你的问题,请参考以下文章

何时使用公用表表达式 (CTE)

T-SQL 公用表表达式(CTE)

mysql8 公用表表达式CTE的使用

公用表表达式(CTE)

SQL 公用表表达式(CTE)

SQL-CTE公用表达式