Gibt es eine Möglichkeit, Polygone in Multipolygontypen umzuwandeln?
Zum Beispiel habe ich einen Kreis mit ST_Buffer () auf einem Punkt erstellt. Der Rückgabetyp dieser Funktion ist vom Typ Polygon. Das Problem besteht darin, dass für die Geometriespalte eine Beschränkung auf den Multipolygon-Typ besteht. Ich kann also kein einfaches Polygon einfügen.
Ich habe die Funktion ST_MPolyFromText () verwendet, aber wie gewöhnlich gibt sie dafür null zurück, und ST_Dump () gibt nicht die richtige Ausgabe aus.
Die Einschränkung ist:
CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'MULTIPOLYGON'::text OR geom IS NULL),
st_geometryn(geom, 1)
.Antworten:
ST_Multi - Gibt die Geometrie als MULTI * -Geometrie zurück. Wenn die Geometrie bereits ein MULTI * ist, wird sie unverändert zurückgegeben.
Beispiel:
quelle