Hive创建表语句
外部表
--订单来源表
CREATE EXTERNAL TABLE IF NOT EXISTS ODS.ORDER_INFO
(
ORDER_ID STRING,
ORDER_PRICE STRING,
ORDER_USER STRING,
...
...
)
ROW FORMAT delimited DELIMITED FIELDS TERMINATED BY ','
location '/home/hadoop/hive/warehouse/order_info.txt'
STORED AS TEXTFILE ;
针对内外部表,一般外部表指定location,内部一般默认。
内部表
--省份维度表
CREATE TABLE IF NOT EXISTS DIM.DIM_PROVINCE
(
PROVINCE_NO STRING,
PROVINCE_NAME STRING
)
ROW FORMAT delimited DELIMITED FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE ;
分区表
CREATE TABLE PROVINCE_TOTAL_MONEY
(
PROVINCE STRING,
SUM_MONEY DECIMAL(20,4)
)
PRRTITIONED BY (MONTH STRING)
;
分区字段可以有多个。
临时表
CREATE TEMPORARY TABLE TMP_ORDER_INFO AS SELECT * FROM APP.ORDER_INFO WHERE 1=1;
视图
CREATE VIEW VIEW_ORDER_INFO AS SELECT * FROM APP.ORDER_INFO WHERE 1=1;
视图随着源表的数据动态变化,hdfs指定不变。