hive创建临时表

create temporary table 临时表表名 as
select * from 表名;

hive中的临时表只对当前session有效,session退出后,表会自动删除

若创建的临时表表名已经存在,那么当前session应用该表名时使用的是你创建的临时表,只有删除或者修改临时表才能使用原先存在的表。

临时表不支持分区字段和创建索引

注意要点:

1、如果创建的临时表表名已存在,那么当前session引用到该表名时实际用的是临时表,只有drop或rename临时表名才能使用原始表

2、临时表限制:不支持分区字段和创建索引

从Hive1.1开始临时表可以存储在内存或SSD,使用hive.exec.temporary.table.storage参数进行配置,该参数有三种取值:memory、ssd、default。相关链接

方式二

with a1 as (select * from A)
select * from a1;

1.with as 属于一次性的,后面必须加其他sql一起使用才可以!不然会报错!

2.这里必须要整体作为一条sql查询,即with as语句后不能加分号,不然会报错

多个with as 的使用

with a1 as (select * from A),
a2 as (select * from a1)
select * from a2;

1.多个with as 使用必须使用逗号隔开,

2.前面with as生成的临时表可以在后面的with as中使用 但是with子句内部不能嵌套with子句

Original: https://blog.csdn.net/h18208975507/article/details/123417794
Author: 西奥斯
Title: hive创建临时表

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/817945/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球