获取与超表关联的数据块列表。
函数接受以下必需和可选参数。这些参数的语义与 drop_chunks
function 相同。
名称 | 类型 | 描述 |
---|---|---|
relation | REGCLASS | 从中选择数据块的超表或连续聚合。 |
名称 | 类型 | 描述 |
---|---|---|
older_than | ANY | 截止点的规范,任何早于此时间戳的数据块都应显示。 |
newer_than | ANY | 截止点的规范,任何晚于此时间戳的数据块都应显示。 |
created_before | ANY | 截止点的规范,任何在此时间戳之前创建的数据块都应显示。 |
created_after | ANY | 截止点的规范,任何在此时间戳之后创建的数据块都应显示。 |
older_than
和 newer_than
参数可以通过两种方式指定
时间间隔类型: 截止点计算为
now() - older_than
,类似地,now() - newer_than
。如果提供 INTERVAL 且时间列不是 TIMESTAMP、TIMESTAMPTZ 或 DATE 类型,则会返回错误。时间戳、日期或整数类型: 截止点显式地给出为 TIMESTAMP / TIMESTAMPTZ / DATE 或 SMALLINT / INT / BIGINT。时间戳或整数的选择必须遵循超表时间列的类型。
created_before
和 created_after
参数可以通过两种方式指定
时间间隔类型: 截止点计算为
now() - created_before
,类似地,now() - created_after
。这使用数据块创建时间进行过滤。时间戳、日期或整数类型: 截止点显式地给出为
TIMESTAMP
/TIMESTAMPTZ
/DATE
或SMALLINT
/INT
/BIGINT
。整数值的选择必须遵循超表分区列的类型。否则,数据块创建时间将用于过滤。
当同时使用 older_than
和 newer_than
参数时,该函数返回两个结果范围的交集。例如,指定 newer_than => 4 months
和 older_than => 3 months
会显示所有介于 3 到 4 个月之间的数据块。类似地,指定 newer_than => '2017-01-01'
和 older_than => '2017-02-01'
会显示所有介于 '2017-01-01' 和 '2017-02-01' 之间的数据块。指定不会导致两个范围之间重叠交集的参数会导致错误。
当同时使用 created_before
和 created_after
参数时,该函数返回两个结果范围的交集。例如,指定 created_after
=> 4 months和
created_before=> 3 months
会显示所有在从现在起 3 到 4 个月之间创建的数据块。类似地,指定 created_after
=> '2017-01-01'和
created_before => '2017-02-01'
会显示所有在 '2017-01-01' 和 '2017-02-01' 之间创建的数据块。指定不会导致两个范围之间重叠交集的参数会导致错误。
注意
created_before
/created_after
参数不能与 older_than
/newer_than
一起使用。
获取与表关联的所有数据块的列表
SELECT show_chunks('conditions');
获取超表 conditions
中早于 3 个月的所有数据块
SELECT show_chunks('conditions', older_than => INTERVAL '3 months');
获取超表 conditions
中在 3 个月前创建的所有数据块
SELECT show_chunks('conditions', created_before => INTERVAL '3 months');
获取超表 conditions
中在最近 1 个月内创建的所有数据块
SELECT show_chunks('conditions', created_after => INTERVAL '1 month');
获取超表 conditions
中在 2017 年之前的所有数据块
SELECT show_chunks('conditions', older_than => DATE '2017-01-01');
关键词
在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页。