Impala - 截断表格

Impala的截断表语句用于从现有表中删除所有记录.

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

语法

以下是truncate table语句的语法.

truncate table_name;

示例

假设我们在Impala中有一个名为 customers 的表,如果验证其内容后,您将获得以下结果.这意味着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 statement 截断Impala中的表的示例.这里我们删除名为 customers 的表的所有记录.

[quickstart.cloudera:21000] > truncate customers;

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

Query: truncate customers 

Fetched 0 row(s) in 0.37s

验证

如果验证customers表的内容,在删除操作之后,使用选择语句,您将得到一个空行,如下所示.

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

Fetched 0 row(s) in 0.12s

使用Hue Browser截断表格

打开Impala查询编辑器并在其中键入 truncate 语句.然后单击执行按钮,如下面的屏幕截图所示.

截断表

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