我正在使用postgres 10 db。
我的客户表由以下几列组成
custid (primary key),
name,
phonenumber,
email,
dateofbirth,
address,
city,
country,
status(boolean)
Join_Date(Date)
我表中有数百万条记录。我想通过Join_Date和Intermediate table在不同月份的基础上对表进行分区(2018年1月为一个分区,2018年2月为一个分区,.. etc等)。
我还想编写自动化脚本,以便在月底时该表必须创建上个月的另一个分区
答案 0 :(得分:0)
尝试此方法:
每个月您都可以运行此脚本,这将为您提供逻辑分区。
update customer set partition_column=to_char(Join_Date, 'YYYY-MM')
join intermediate_table on intermediate_table.custid=customer.custid
and intermediate_table.Join_Date=customer.Join_Date
truncate table intermediate_table
答案 1 :(得分:0)
Postgres文档中有一个针对您问题的示例。