我有2个桌子,包裹和单位。包裹单位为米,单位为英尺
我正在尝试以下操作:
SELECT p.pin, ST_AsGeoJSON(ST_Transform(p.geom,4326)) as geojson
FROM susquehanna_parcels p, units_pa u
WHERE ST_Intersects(p.geom, u.the_geom)
AND u.unit_name='Traver E North 07-081'
我没有得到任何结果,因为测量系统已关闭。您会看到我正在尝试将小数度数化(在其他查询中也可以使用),但是由于数据没有任何交集,因此没有结果。
如何将p.geom转换为英尺,或者将u.the_geom转换为米,以便ST_Intersects可以正常工作?
答案 0 :(得分:0)
如果parcels
以米为单位,而units
以英尺为单位,则只要测量单位取决于SRID,它们就不在同一SRID中。如果要检查两个几何是否相交,则应确保两个几何都在同一SRID中。
SELECT p.pin, ST_AsGeoJSON(ST_Transform(p.geom,4326)) as geojson
FROM susquehanna_parcels p, units_pa u
WHERE ST_Intersects(ST_Transform(p.geom, 4326), ST_Transform(u.the_geom, 4326))
AND u.unit_name='Traver E North 07-081'
我在这里使用EPSG 4326是因为您以前使用过EPSG 4326,但是只要ST_Intersects
内的两个几何图形都相同,其他任何方法都应该没问题