如何获取 table 在 hive 中是动态分区还是静态分区

How to get whether the table is partitioned by dynamic or static in hive

试图在配置单元中找到具有动态分区的表列表,尝试了以下命令但没有找到找到方法的线索,

尝试过的命令

show partitions <table_name>
describe formatted <table_name>

动态分区和静态分区没有区别。这就是分区的创建方式。动态 - 表示分区是使用创建的 insert overwrite table partition (partition_column) select ... 语句(未指定分区值)执行。

静态意味着分区是使用 alter table add partition... 语句或使用相同的 insert overwrite table partition (partition_column='static value') 语句创建的。元数据中没有这样的属性,因为使用 INSERT(动态或静态)或 ALTER(静态)创建的分区之间没有区别。可以在已经静态创建分区的 table 中动态创建分区,反之亦然,绝对没有区别。

也可以使用添加分区,此语句创建的分区是同一个分区,无法与其他方式创建的分区区分。