我们如何使用正则表达式在配置单元中删除分区。可能吗?

How do we drop partitions in hive with regex. Is it possible?

我正在尝试 运行 以下

alter table historical_data drop partition (my_date not rlike '[A-Za-z]');

这给了我一个例外

org.apache.hadoop.hive.ql.parse.ParseException: line 2:69 mismatched input 'not' expecting set null in drop partition statement

我找不到任何类似的东西。我确实在 SO 的某个问题上看到了一个答案,但它不起作用。

感谢任何帮助。

很遗憾,不支持正则表达式。

您可以使用所有这些比较器 < > <= >= <> = != 也许它会有所帮助。请参阅此答案中的用法:

另请参阅此 jira Extend ALTER TABLE DROP PARTITION syntax to use all comparators

还有一个 jira 尚未实现:Extend ALTER TABLE DROP PARTITION syntax to use multiple conditions

Impala supports LIKE 在删除分区中:

alter table historical_data drop partition (year < 1995, last_name like 'A%');

创建了这个Jira for adding regexp,如果需要请在Jira中投票。