gpt4 book ai didi

mysql - 截断命令(Hive 与 SQL)

转载 作者:可可西里 更新时间:2023-11-01 17:00:45 26 4
gpt4 key购买 nike

我期待 SQL 和 HIVE 中的截断行为相同。但它不同。我想确认一下我是不是理解错了

1) 在 SQL 中,以下命令删除表并重新创建。如果存在,则删除所有分区

mysql> truncate table t1;

2) 在HIVE中,下面的命令只是从表中删除数据。它不会删除现有分区。我们需要手动删除它。

hive> truncate table t1;

我发现了另一个问题,如果我们通过更改将列添加到分区表中。那么往表中insert overwrite数据就会出现问题。解决方法是删除表中的所有现有分区。

这是 HIVE(版本 0.13)中的问题吗?对 HIVE 和 SQL 使用 truncate 的其他区别是什么?

最佳答案

在 HIVE 中,truncate table 将从表或分区中删除所有行。

分区不会被删除。我们必须手动删除这些分区。

当前目标表应该是 native /托管表,否则将抛出异常。

关于mysql - 截断命令(Hive 与 SQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24324099/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com