Като цяло намирам тази широка употреба на UNION
предполага лош дизайн на база данни. Има случаи, когато UNION
и UNION ALL
имат смисъл, но те трябва да са сравнително редки извън рекурсивните общи таблични изрази.
PostgreSQL предоставя доста голям брой опции за поддържане на управляемост на производителността на една таблица и както посочихте, частичните индекси са много добър начин за справяне с този проблем.
Основният проблем с разбиването на таблици, така че UNION
често срещани твърдения е, че прави управлението на първичен и външен ключ доста проблематично. Като цяло почти винаги е много по-добре първо да се уверите, че структурата на вашите данни е ясна и управляема, а след това да се тревожите за оптимизацията, отколкото да се тревожите за оптимизацията и след това да се опитвате да направите оптимизираното решение управляемо.