"Deklarativní dělení tabulek", což je dělení jako prvotřídní funkce DBMS s vlastní syntaxí, bylo přidáno do PostgreSQL 10 .
V dřívějších verzích můžete stejného efektu dosáhnout s trochu větším úsilím pomocí "dědění tabulky". V příručce je stránka popisující, jak to provést ručně , shrnuto jako:
- Vytvořte "hlavní" tabulku, ze které budou všechny oddíly dědit.
- Vytvořte několik „podřízených“ tabulek, které každá zdědí z hlavní tabulky.
- Přidejte omezení tabulky do tabulek oddílů, abyste definovali povolené hodnoty klíčů v každém oddílu.
- Pro každý oddíl vytvořte index na sloupci klíče a také jakékoli další indexy, které budete chtít.
- Volitelně definujte spouštěč nebo pravidlo pro přesměrování dat vložených do hlavní tabulky do příslušného oddílu.
- Ujistěte se, že konfigurační parametr constraint_exclusion není v postgresql.conf zakázán. Pokud ano, dotazy nebudou optimalizovány podle potřeby.
Chcete-li to usnadnit, pokud nemůžete upgradovat na verzi 10, můžete použít rozšíření, jako je pg_partman který vám poskytuje další funkce pro nastavení a správu sad oddílů.