hive update
时间: 2023-11-11 14:05:35 浏览: 81
Hive学习笔记(更新版)
在Hive中,没有直接的UPDATE语句,但可以使用INSERT OVERWRITE语句来覆盖原有表数据达到更新的效果。具体操作如下:
1. 使用INSERT OVERWRITE语句覆盖原有表数据:
```
INSERT OVERWRITE TABLE table_name [PARTITION (partition_col=value, ...)] VALUES (value1, value2, ...);
INSERT OVERWRITE TABLE table_name [PARTITION (partition_col=value, ...)] SELECT column1, column2, ... FROM source_table WHERE condition;
```
2. 如果需要删除数据,同样可以使用INSERT OVERWRITE语句来覆盖原始表或把要保留的数据插入到新的目标表,从而达到删除的效果。
```
-- 删除表中所有数据
INSERT OVERWRITE TABLE table_name SELECT * FROM table_name WHERE 1=0;
-- 删除表中指定条件的数据
INSERT OVERWRITE TABLE table_name SELECT * FROM table_name WHERE condition;
-- 保留表中指定条件的数据
INSERT OVERWRITE TABLE new_table SELECT * FROM table_name WHERE condition;
```
阅读全文