在同一命令中创建表并加载数据

时间:2016-03-20 17:39:31

标签: hive

要使用我们需要的.tbl文件创建表并在该表中加载数据,首先创建模式然后加载数据?

不可能只在一个命令中执行这两个操作,如下面的命令?

create external table customer (
    C_CUSTKEY INT, 
    C_NAME STRING, 
    C_ADDRESS STRING, 
    C_NATIONKEY INT, 
    C_PHONE STRING, 
    C_ACCTBAL DOUBLE, 
    C_MKTSEGMENT STRING, 
    C_COMMENT STRING
) ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' STORED AS TEXTFILE LOCATION '/user/hadoopadmin/tables/customer.tb.';

因为我首先尝试执行上面的命令并且创建了模式但是当我尝试“从客户选择计数(*)”时,我得到0行。

但是使用第一个命令创建模式然后使用“LOAD DATA INPATH”命令加载数据工作。现在使用select count(*)我得到表格中的行数。

那么执行两个命令是必要的吗?我的第一个带有“LOCATION”选项的代码示例是不可能的,或者第一个代码有一些问题,因为它没有用?

0 个答案:

没有答案