我想检查Athena中的分区列表.
我用这样的查询.
show partitions table_name
但我想搜索特定的表存在.
所以我使用了如下所示的查询,但没有返回任何结果.
show partitions table_name partition(dt='2010-03-03')
因为dt也包含小时数据.
dt='2010-03-03-01', dt='2010-03-03-02', ...........
那么当我输入“2010-03-03”然后搜索“2010-03-03-01”,“2010-03-03-02”时,有什么方法可以搜索吗?
我必须像这样分开分区吗?
dt='2010-03-03', dh='01'
并显示分区table_name在Hive中仅返回500行.雅典娜也一样吗?
最佳答案 有一种方法可以将分区列表作为结果集返回,因此可以使用LIKE进行过滤.但您需要使用内部information_schema数据库,如下所示:
SELECT partition_value
FROM information_schema.__internal_partitions__
WHERE table_schema = '<DB_NAME>'
AND table_name = '<TABLE_NAME>'
AND partition_value LIKE '2010-03-03-%'