PARTITION_VALUES
更新时间:2025-10-16
描述
表函数,生成分区值临时表,可以查看某个 TABLE 的分区值列表。
该函数用于 FROM 子句中,仅支持 hive 表
语法
SQL
1PARTITION_VALUES(
2 "catalog"="<catalog>",
3 "database"="<database>",
4 "table"="<table>"
5)
必填参数 (Required Parameters)
| 字段 | 描述 |
|---|---|
<catalog> |
指定需要查询的集群 catalog 名。 |
<database> |
指定需要查询的集群数据库名。 |
<table> |
指定需要查询的集群表名。 |
返回值
要查的表有几个分区字段,该表就有几列
示例
hive3 CATALOG 下 multi_catalog 的 text_partitioned_columns 的建表语句如下:
SQL
1CREATE TABLE `text_partitioned_columns`(
2 `t_timestamp` timestamp)
3PARTITIONED BY (
4 `t_int` int,
5 `t_float` float,
6 `t_string` string)
数据如下:
Text
1mysql> select * from text_partitioned_columns;
2+----------------------------+-------+---------+----------+
3| t_timestamp | t_int | t_float | t_string |
4+----------------------------+-------+---------+----------+
5| 2023-01-01 00:00:00.000000 | NULL | 0.1 | test1 |
6| 2023-01-02 00:00:00.000000 | NULL | 0.2 | test2 |
7| 2023-01-03 00:00:00.000000 | 100 | 0.3 | test3 |
8+----------------------------+-------+---------+----------+
查看 hive3 CATALOG 下 multi_catalog 的 text_partitioned_columns 的分区值列表
SQL
1select * from partition_values("catalog"="hive3", "database" = "multi_catalog","table" = "text_partitioned_columns");
Text
1+-------+---------+----------+
2| t_int | t_float | t_string |
3+-------+---------+----------+
4| 100 | 0.3 | test3 |
5| NULL | 0.2 | test2 |
6| NULL | 0.1 | test1 |
7+-------+---------+----------+
