zoukankan      html  css  js  c++  java
  • PostGIS-将多面转换为单面(PostGIS

    Is it possible to import a shape file containing multipolygons into single polygon in PostGIS? Whenever I try importing a shape file of a polygon, it is stored as a multipolygon (as opposed to a single polygon) in a geom column. Thus, I am unable to extract it as a single polygon value from the multipolygon.

    All helpful suggestions much appreciated

    You can use ST_GeometryN together with ST_NumGeometries and the generate_series function to obtain what you need.

    Let's assume you have the table from Jakub's example:

    CREATE TABLE multi AS(
    SELECT 1 as id, 2 as test, ST_GeomFromText('MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0)),((1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -2,-2 -2,-2 -1,-1 -1)))') AS geom
    );

    This one contains a multipolygon, an id and another column.

    To get each single polygon from the table including all other attributes try something like:

    SELECT id, test, ST_GeometryN(geom, generate_series(1, ST_NumGeometries(geom))) AS geom 
    FROM multi

    "id" and "test" are the values for each row in the original table. generate_series creates a series of numbers from 1 to the number of geometries in each row.

    Therefore you will split each multi geometry in its separate single geometry parts and the values in the other columns remain the same.

    Just replace the columns and table in the example with the columns from your exported shapefile and you will get the table with the single polygons.

    Hope this answers your question.

    原文:https://www.it1352.com/1761001.html

  • 相关阅读:
    51nod1459 迷宫游戏
    51nod2006 飞行员配对(二分图最大匹配)
    51nod2006 飞行员配对(二分图最大匹配)
    GIT学习之路第四天 远程仓库
    GIT学习之路第四天 远程仓库
    搞懂树状数组
    搞懂树状数组
    线段树基础详解
    线段树基础详解
    折半枚举(双向搜索)poj27854 Values whose Sum is 0
  • 原文地址:https://www.cnblogs.com/g120/p/14772409.html
Copyright © 2011-2022 走看看