在HIVE中创建与另一个表相同列的表?

Sot*_*her 1 sql hadoop hive

我想从hive中另一个表的一些元数据创建表.我正在使用蜂巢.

我从这个问题中知道,可以通过INFORMATION_SCHEMA.COLUMNSsql 从表中检索元数据:

是否HIVE具有对表的元数据的类似访问权限,以允许我使用另一个表的列创建表?基本上,我正在复制一个没有所有元组的表.

这是我迄今为止最好的事情:

create table <table_name>( (select <table_name> from INFORMATION_SCHEMA.COLUMNS)) row format delimited fields by '|';

Vam*_*ala 13

您可以使用LIKE新表获取结构但不获取数据.

Hive文档

CREATE TABLE yourtable
LIKE table2;
Run Code Online (Sandbox Code Playgroud)


Luk*_*zda 7

您可以尝试CTAS语法:

CREATE TABLE new_table_name
AS
SELECT *
FROM old_table_name
WHERE 1 = 2;
Run Code Online (Sandbox Code Playgroud)