Impala的Truncate Table語句用于從現(xiàn)有表中刪除所有記錄。
您也可以使用DROP TABLE命令刪除一個完整的表,但它會從數(shù)據(jù)庫中刪除完整的表結(jié)構(gòu),如果您希望存儲一些數(shù)據(jù),您將需要重新創(chuàng)建此表。
以下是truncate table語句的語法。
truncate table_name;
假設(shè),我們在Impala中有一個名為customers的表,如果您驗證其內(nèi)容,則會得到以下結(jié)果。 這意味著customers表包含6條記錄。
[quickstart.cloudera:21000] > select * from customers; Query: select * from customers +----+----------+-----+-----------+--------+--------+ | id | name | age | address | salary | e_mail | +----+----------+-----+-----------+--------+--------+ | 1 | Ramesh | 32 | Ahmedabad | 20000 | NULL | | 2 | Khilan | 25 | Delhi | 15000 | NULL | | 3 | kaushik | 23 | Kota | 30000 | NULL | | 4 | Chaitali | 25 | Mumbai | 35000 | NULL | | 5 | Hardik | 27 | Bhopal | 40000 | NULL | | 6 | Komal | 22 | MP | 32000 | NULL | +----+----------+-----+-----------+--------+--------+
以下是使用truncate語句在Impala中截斷表的示例。 這里我們刪除名為customers的表的所有記錄。
[quickstart.cloudera:21000] > truncate customers;
在執(zhí)行上述語句時,Impala刪除指定表的所有記錄,并顯示以下消息。
Query: truncate customers Fetched 0 row(s) in 0.37s
如果您驗證customers表的內(nèi)容,在刪除操作后,使用select語句,您將獲得一個空行,如下所示。
[quickstart.cloudera:21000] > select * from customers; Query: select * from customers Fetched 0 row(s) in 0.12s
打開Impala查詢編輯器并在其中鍵入truncate語句。 然后單擊執(zhí)行按鈕,如下面的屏幕截圖所示。
執(zhí)行查詢/語句后,將刪除表中的所有記錄。
更多建議: