如何创建一个 table 与几何多边形和 field_ID 从另一个 table 包含 field_ID 和 lat long 点在 postgis

How to create a table with geometry polygons and field_ID from another table containing field_ID and lat long point in postgis

我有以下 table,其中包含农场中田地的坐标。我正在尝试使用点坐标作为这些多边形的边缘来创建多边形。

CREATE TABLE field_point (
     field_id VARCHAR(64) PRIMARY KEY,
     point_latitude DOUBLE PRECISION,
     point_longitude DOUBLE PRECISION,
     point GEOMETRY(Point,4326),
);

我了解通过使用每个点的纬度和经度创建几何点。

然后我收集坐标以在 table field_point 中创建一个点几何体,如下所示:

UPDATE field_point SET point = ST_Transform(ST_SetSRID(ST_MakePoint(point_longitude, point_latitude), 4326),4326);

最后,我将新创建的点和 运行 convex_hull 函数收集到另一个 table 称为字段的 return 多边形上:

INSERT INTO field (polygon) SELECT ST_ConvexHull(ST_Collect(point)) FROM field_point GROUP BY field_id;

我现在无法从第一个 table 中取出 field_id。你能帮忙吗?

预期结果应如下table

CREATE TABLE field (
     field_id VARCHAR(64) PRIMARY KEY,
     polygon GEOMETRY(polygon,4326),
);

一行应该是从 field_point table.

定义 field_id 的所有点创建的多边形

谢谢!

请使用以下查询,

INSERT INTO field (field_id, polygon) 
SELECT field_id, ST_ConvexHull(ST_Collect(point)) FROM field_point;