From: | Soni <diptatapa(at)gmail(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | PG10 declarative partitioning that allow null value |
Date: | 2019-04-16 02:37:59 |
Message-ID: | 41964f36-ae96-f37c-edde-bcea231617b3@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hello All,
currently we are planning to migrate inheritance partitioning to
declarative partitioning by range values of int on pg10. But the key
values can contain null. I know that range partitioning does not allow
null values.
We are looking for workaround for this, that is create a list
partitioning and then followed by range sub-partitioning. List
partitioning of number of digits of the int key column.
CREATE TABLE partitioned_table_name (like table_name) partition by list
(floor(log(int_key_column)+1));
create table partitions_1 partition of partitioned_table_name for values
in (null);
create table partitions_2 partition of partitioned_table_name for values
in (1);
.....
.....
create table partitions_2 partition of partitioned_table_name for values
in (9) partition by range(int_key_column);
Question is :
is this a good practice ? will performance dropped significantly due to
the process of counting the number of digits ?
or is there any better workaround for this ?
Thanks,
Soni.
From | Date | Subject | |
---|---|---|---|
Next Message | Soni | 2019-04-16 03:06:07 | Re: PG10 declarative partitioning that allow null value |
Previous Message | Tom Lane | 2019-04-15 23:58:49 | Re: Inexplicable UPDATE...RETURNING behaviour |