hive中創建表的三種方式:直接建表,抽取(as)建表,like建表


Hive創建表的方式(默認路徑/user/hive/warehouse,也可以location指定,主要針對external表)  

1、使用create命令創建一個新表,帶分區

CREATE TABLE `FDM_SOR.mytest_deptaddr`(
`dept_no` int,
`addr` string,
`tel` string)
partitioned by(statis_date string )
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
可以使用describe formatted mytest_deptaddr 查看建表相關的各種配置屬性以及默認屬性。在創建表時有很多屬性,比如存儲地址,存儲格式等屬性我們都沒有直接配置,而是選擇了系統默認的。

2、把一張表的某些字段抽取出來,創建成一張新表,使用as

create table mytest_tmp1
as
select * from FDM_SOR.mytest_deptaddr where statis_date='20180229';
注意:

1.as只會復制屬性以及屬性值到新的表中

2.使用as創建的表,並不會帶原表的分區(分區丟失),包扣一些字段的約束等(可以通過describe formatted查看)

3.新表中會將原表的分區當做字段出現在新表中。

3、復制表結構,使用like創建表

create table mytest_tmp like FDM_SOR.mytest_deptaddr;
 注意:不會復制表中屬性值,只會復制表結構(包扣表的分區以及存儲格式之類的,區別as)


————————————————
版權聲明:本文為CSDN博主「道法—自然」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/wyqwilliam/article/details/82531332


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM