Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgis经度、纬度到几何体postgresql_Postgresql_Google Maps_Gps_Postgis - Fatal编程技术网

Postgis经度、纬度到几何体postgresql

Postgis经度、纬度到几何体postgresql,postgresql,google-maps,gps,postgis,Postgresql,Google Maps,Gps,Postgis,我正在迁移PostGIS系统中的所有信息,以及数千个体育场地的完整信息。对于所有这些空间,我得到了纬度和经度值,PostGis需要一个几何体值,该列已经在我的表“Location”中 该应用程序的SRID为23030 我研究了如何从经度和纬度计算几何体值,发现: update location set point=ST_GeomFromText('POINT('|| longitud || ' ' || latitud ||')',23030); UPDATE georrepositorio.g

我正在迁移PostGIS系统中的所有信息,以及数千个体育场地的完整信息。对于所有这些空间,我得到了纬度和经度值,PostGis需要一个几何体值,该列已经在我的表“Location”中

该应用程序的SRID为23030

我研究了如何从经度和纬度计算几何体值,发现:

update location set point=ST_GeomFromText('POINT('|| longitud || ' ' || latitud ||')',23030);
UPDATE georrepositorio.geometria SET point = ST_SetSRID(ST_Point( longitud, latitud),23030);
UPDATE georrepositorio.geometria SET POINT = ST_SetSRID(ST_MakePoint(longitud,latitud),23030);
我总是得到这样的字符串:
“0101000020F6590000894327550B97114104EA99EA599D4E41”

在我正在构建的web应用程序中,如果我标记用于定位空间的点,它会在表“location”中插入一个字符串,如:
“0101000020F65900000000020DFB115C00000008053244240”
,它看起来类似于我使用这些函数得到的字符串

问题是我无法定位每个空间,因为空间太多了,所以我需要进行大规模迁移,而使用这些函数来计算几何体列是行不通的。因为ok,这些函数计算geom值,但当您查询应用程序时,不会显示它们


请问,有人知道如何从经纬度计算几何距离吗?任何内容首先,几何图形存储为二进制,您可以看到“0101000020…”,它被称为。对于点几何图形,可以使用
ST_X(点)
提取经度的坐标序号,使用
ST_Y(点)
提取纬度的坐标序号。您还可以使用
ST_AsText(point)
作为人类可读的WKT表示

是一个投影空间参考系统(SRS),其东距和北距以米为单位。但是,如果坐标数据是纬度和经度,则需要使用不同的SRS,例如。正确存储后,可以使用
ST_变换(point,23030)
为应用程序重新投影数据