对于';默认值';11之前版本的postgresql分区?
我们当前的PostgreSQL引擎是10.xx。我需要创建一个“默认”分区来存储与其余任何分区都不匹配的数据。我知道PostgreSQL v11.0支持这种功能。然而,我们还没有决定升级到11。在旧的Postgresql引擎中是否有实现“默认”分区的变通方法 以下面的实现为例。如果传感器ID不是111或时间范围不在指定的时间范围内,则将记录插入表中将失败对于';默认值';11之前版本的postgresql分区?,sql,postgresql,database-partitioning,Sql,Postgresql,Database Partitioning,我们当前的PostgreSQL引擎是10.xx。我需要创建一个“默认”分区来存储与其余任何分区都不匹配的数据。我知道PostgreSQL v11.0支持这种功能。然而,我们还没有决定升级到11。在旧的Postgresql引擎中是否有实现“默认”分区的变通方法 以下面的实现为例。如果传感器ID不是111或时间范围不在指定的时间范围内,则将记录插入表中将失败 CREATE TABLE sensor_readings ( id bigserial NOT NULL, create_da
CREATE TABLE sensor_readings (
id bigserial NOT NULL,
create_date_time timestamp NULL DEFAULT now(),
value int8 NULL
) PARTITION BY LIST (id);
CREATE TABLE sensor_readings_id1
PARTITION OF sensor_readings
FOR VALUES IN (111) PARTITION BY RANGE(create_date_time);
CREATE TABLE sensor_readings_id1_wk1
PARTITION OF sensor_readings_id1
FOR VALUES FROM (''2020-10-01 00:00:00'') TO (''2020-10-20 00:00:00'');
如果你真的需要它,我认为升级到12(或13)是最好的选择。特别是因为11和12对声明性分区引入了其他实质性的性能改进