sql >> Databasteknik >  >> RDS >> PostgreSQL

PostGIS - konvertera multipolygon till enkel polygon

Jag använde ST_DUMP att konvertera en tabell med multipolygongeometrier i PostgreSQL till en ny tabell med polygongeometrier och andra kolumner med data.

CREATE TABLE poly AS                       --poly will be the new polygon table
WITH dump AS (
    SELECT id, test,                       --columns from your multipolygon table 
      (ST_DUMP(geometry)).geom AS geometry 
    FROM multi                             --the name of your multipolygon table
) 
SELECT id, test, 
  geometry::geometry(Polygon,4326)         --type cast using SRID from multipolygon
FROM dump;

Uppdatering: Jag tror att detta kan göras mycket lättare med den här frågan.

CREATE TABLE polygon_table AS 
    SELECT id, example_column, (ST_DUMP(geom)).geom::geometry(Polygon,4326) AS geom FROM multipolygon_table


  1. Behöver en främmande nyckel som refererar till PK begränsningen NOT NULL?

  2. Använda URL-parametrar i MYSQL-sökning

  3. Ecto bygga flera assoc

  4. Hur skiljer man det första resultatet av frågan från resten?