在Hive中创建具有间隔列类型的表

时间:2017-01-09 08:26:50

标签: sql hive ddl

在Hive中创建具有间隔数据类型的表的语法是什么?我试过像:

CREATE TABLE t1 (c1 interval year to month);

但它不起作用。无法从Apache Hive中找到任何文档。

2 个答案:

答案 0 :(得分:0)

到目前为止,我还没有找到直接做到这一点的方法,我将与一些Hive开发人员联系,看看这是否是一个错误。实际的数据类型是interval_day_time和interval_year_month,如下面的工作所示。这仍然无法解决如何直接使用这些类型创建表的问题。

create table test_interval 
as 
select  interval '1' day as day_interval, 
        interval '1' month as month_interval;

describe test_interval;
+-----------------+----------------------+----------+--+
|    col_name     |      data_type       | comment  |
+-----------------+----------------------+----------+--+
| day_interval    | interval_day_time    |          |
| month_interval  | interval_year_month  |          |
+-----------------+----------------------+----------+--+
2 rows selected (0.048 seconds)

答案 1 :(得分:0)

间隔类型(YEAR TO MONTH和DAY TIME)仅在查询表达式和谓词中受支持。不支持将间隔类型用作表中的列数据类型。