(Verificação antes do voo: os atributos são idênticos em todas as tabelas originais? O tipo de geometria é exatamente o mesmo em todas as tabelas?)
Você também pode
- crie a tabela (vazia) primeiro e use INSERT INTO ... SELECT ... FROM para obter todos os dados de cada tabela original na tabela mesclada.
- Crie a nova tabela a partir de uma grande instrução UNION.
Para 1, pode ser:
CREATE TABLE merged (id serial primary key, attrib1 integer, attrib2 varchar(15),....);
SELECT AddGeometryColumn('merged','geom',<SRID>,'<FEATURE_TYPE>,'XY');
INSERT INTO merged (attrib1, attrib2, ...., geom) SELECT attribA, attribB,...,geom FROM table_1;
INSERT INTO merged (attrib1, attrib2, ...., geom) SELECT attribA, attribB,...,geom FROM table_2;
e assim por diante...
Para a opção 2:
CREATE TABLE merged AS(
SELECT attribA, attribB,...,geom FROM table_1
UNION
SELECT attribA, attribB,...,geom FROM table_2
UNION
....
);
SELECT Populate_Geometry_Columns('merged'::regclass);
Micha HTH