Используя динамическое разбиение, вы можете перезаписать разделы, которые необходимо обновить.Используйте оператор case, чтобы проверить строки, которые нужно изменить, и установить значения, как в этом шаблоне:
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
insert overwrite table table_name partition (partition_column)
select col1,
col2,
case when col1='record to be updated' then 'new value' else col3 end as col3,
...
colN,
partition_column --partition_column should be the last
from table_name
where ...--partition predicate here