在UTM中直接转换多重字符串以简化postgresql

在UTM中直接转换多重字符串以简化postgresql,postgresql,postgis,Postgresql,Postgis,想象一下,我有一个wkt: MULTILINESTRING( (59.6338836103678 36.3408616511151,59.6336405351758 36.3410074124113), (59.648377513513 36.3329201331362,59.6481338515878 36.3326094998047,59.6478482801467 36.3322287937626) ) 现在我想简化它,以便将其转换为UTM 是否可以直接在PostgreSQL中将此多重字

想象一下,我有一个wkt:

MULTILINESTRING(
(59.6338836103678 36.3408616511151,59.6336405351758 36.3410074124113),
(59.648377513513 36.3329201331362,59.6481338515878 36.3326094998047,59.6478482801467 36.3322287937626)
)
现在我想简化它,以便将其转换为UTM


是否可以直接在PostgreSQL中将此多重字符串转换为UTM,然后将其简化,最后再次转换为SRID=4326

它应该在不转换的情况下工作。但是如果你想先变换

select st_simplify(ST_Transform(ST_SetSRID(st_astext,4326),3857),1)
说明: -从一个SRID到另一个SRID的st_变换 -st_geomfromtext-为postGIS创建可理解的几何体对象 -st_Simplefy argiment是几何和公差值越大,几何越简单

如果希望将对象返回为WKT,则使用st_astext或as st_asEWKT-第二个是对象的SRID信息

如果不转换为公制SRID,它将是这样的

select st_simplify(ST_Transform(ST_SetSRID(st_astext,4326),3857),0.000001)

我已将您的代码更改为:它是完美工作的st_simplifyST_TransformST_SetSRIDst_astext,43263857,1您编写的代码应该可以在不进行转换的情况下工作,如何工作@格雷贝基已经纠正了我的错误-谢谢。SRID4326也是一个几何体,因此您可以使用它来完成与其他SRID相同的所有操作。只需记住,单位是度,而不是米,例如,靠近赤道的1度约为111公里。那么1米就接近0.000001度了。但它的精确度要低得多,而且取决于位置。