2013-02-28 49 views

回答

19

您可以使用drop命令從HDFS中刪除元數據和實際數據。

而只是刪除數據並保留表結構,請使用truncate命令。

有關hive ql的進一步幫助,請檢查language manual of hive

+2

蜂巢版本0.11將支持'TRUNCATE'。此答案中提供的文檔鏈接也已過時。使用[this](https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL)。現在修復了 – 2013-10-09 18:51:26

+1

鏈接。 – harschware 2014-07-01 21:40:31

5

使用以下命令刪除Linux環境中的所有表。

hive -e 'show tables' | xargs -I '{}' hive -e 'drop table {}' 
+4

羽絨投票人,請說明原因。 – 2013-10-09 05:23:27

4

截斷:

hive -e "TRUNCATE TABLE IF EXISTS $tablename" 

砸:

hive -e "Drop TABLE IF EXISTS $tablename" 
+3

truncate表不支持'if exists'子句 – fi11er 2017-04-14 19:15:34

0

您需要刪除該表,然後重新創建它,然後再重新裝

+3

此問題已在4年前回答。你爲什麼重複這個答案? – 2017-09-12 12:56:33