【问题标题】:Setting Unit in POSTGIS在 POSTGIS 中设置单位
【发布时间】:2020-04-10 22:48:09
【问题描述】:

我是PostGIS 的新手,所以我的问题可能听起来很傻。 目前正在使用Points 来表示地理位置(只有纬度和经度),并且想知道如何将[ST_DWithin][3] 一起使用。

我找不到正确的方法,并且迷失在试图解决此问题的文档中。

【问题讨论】:

    标签: postgresql gis postgis


    【解决方案1】:

    您需要确保您的积分是geography 而不是geometry,如manual. 中所述

    所以你想要这样的查询:

    SELECT s.gid, s.school_name
        FROM schools s
            LEFT JOIN hospitals h ON ST_DWithin(s.geom::geography, h.geom::geography, 3000)
        WHERE h.gid IS NULL;
    

    【讨论】:

    • 如果我错了,请纠正我,这些点不是在其存储形式中输入为地理而是按原样读取,对吗?不能事先进行转换(将点存储为地理,因此不必进行转换)?
    • 更简单的解决方案是将它们存储为地理类型,但如果你没有,那么转换并不昂贵(因为你使用了 WGS84)
    猜你喜欢
    • 2016-12-29
    • 1970-01-01
    • 2014-03-17
    • 1970-01-01
    • 2015-11-03
    • 1970-01-01
    • 2020-06-09
    • 1970-01-01
    • 2020-06-17
    相关资源
    最近更新 更多