📜  Impala-截断表

📅  最后修改于: 2020-11-30 05:03:05             🧑  作者: Mango


Impala的Truncate Table语句用于从现有表中删除所有记录。

您也可以使用DROP TABLE命令删除完整的表,但是它将从数据库中删除完整的表结构,如果希望存储一些数据,则需要再次重新创建该表。

句法

以下是截断表语句的语法。

truncate table_name;

假设我们在Impala中有一个名为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;

执行上述语句时,Impala删除指定表的所有记录,并显示以下消息。

Query: truncate customers 

Fetched 0 row(s) in 0.37s

验证

如果验证了客户表的内容,则在执行删除操作后,使用select语句,将得到一个空行,如下所示。

[quickstart.cloudera:21000] > select * from customers;
Query: select * from customers 

Fetched 0 row(s) in 0.12s

使用Hue浏览器截断表格

打开Impala查询编辑器,然后在其中输入截断语句。然后单击执行按钮,如以下屏幕截图所示。

截台

执行查询/语句后,将删除表中的所有记录。