Doing a spatial OR amongst multiple tables
I have a few tables that represent land features (state, town, service area, etc) that may overlap. For instance if I have three tables representing towns, states, and service areas a town will be inside of a state but the town may be split between two service areas. We have many more tables like this that cover areas and may overlap with other areas.
Instead of querying all of these tables to determine the areas a point lies in I'd like to make one table that has a polygon column and foreign keys to all of the other tables (such as state, town, and service area). I'd like it so these polygons never overlap. For the town that's split into two service areas there would be two rows in the table.