我正在尝试删除红移集群中外部表上的所有分区。我找不到一种简单的方法。我目前正在通过运行一个动态查询来从表中选择日期,并将其与drop逻辑连接起来,获取结果集并像一样单独运行
select 'ALTER TABLE procore_iad_ext.active_histories DROP PARTITION (values='''||rtrim(ltrim(values, '["'),'"]') ||''');' from svv_external_partitions
where tablename = 'xyz';
值如下所示->["2009-03-10"]
寻找更简单的直接解决方案。谢谢
最简单的方法是删除表本身。只要您有DDL来重新创建表,并且不介意删除所有分区,只需DROP TABLE <schemaname>.<tablename>;
即可重新创建表。新表将没有任何分区。
请查看Glue目录。它提供了一个用户界面,可以轻松删除表/分区等。