database - 如何将纬度/经度对转换为 PostGIS 地理类型?

标签 database postgresql gis postgis

我正在尝试将一组纬度/经度对加载到 PostGIS 地理类型中,以便能够按位置进行查询。

特别是我有一个包含 float 纬度和经度列以及 geography(Point, 4326) 列的表。我愿意做

update mytable set geography = ???

文档似乎表明以下内容应该有效:

update mytable set geography = ST_GeogFromText('POINT(' || latitude || ' ' ||
                                                           longitude || ')');

事实并非如此。我不知道这个点是什么意思,但它只允许经度在-90到90之间,所以它显然不是经度。

那么,我该怎么办?

最佳答案

……唉。我的愚蠢。显然正确的顺序是经度、纬度。我被愚弄了,以为两个坐标具有相同的范围(-180 到 180),所以认为发生了一些更微妙的事情。

关于database - 如何将纬度/经度对转换为 PostGIS 地理类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2523561/

相关文章:

sql - 在 MySQL 中使用文本而不是 varchar 类型的实际性能影响是什么?

java - 如何使用 Java 在 PostgreSQL 中跳过插入自动生成的 ID 号?

php - 如何防止 CakePHP 在保存时转义数据?

google-maps - 谷歌地图是如何形成的?

database - 如何在组织中共享数据

php - 尝试将数据插入 mySQL 数据时 T_OBJECT_OPERATOR

database - 没有 FROM 关键字的 Sparql

ruby-on-rails - ActiveRecord 查询(包含或加入)

json - Topojson:v0 和 v1 之间的差异列表?

java - 如何找到一些 GPS 点的中点/坐标?