Impala - 截断表



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

您还可以使用 DROP 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 语句在 Impala 中截断表的示例。这里我们删除了名为customers表的全部记录。

[quickstart.cloudera:21000] > truncate customers;

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

Query: truncate customers 

Fetched 0 row(s) in 0.37s

验证

如果在删除操作后使用select语句验证 customers 表的内容,您将获得如下所示的空行。

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

Fetched 0 row(s) in 0.12s

使用 Hue 浏览器截断表

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

Truncating Table

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

广告