postgresql多边形位置查询
postgresql polygon location query
谁能帮我写一个查询来找到所有最近的多边形
经纬度。
所以我无法提供 lat/long,我想找到所有最近的多边形。
这是我目前拥有的:
SELECT name
FROM questions_radius
WHERE mdsys.sdo_within_distance(
the_geom,
mdsys.sdo_geometry(2001, 8307, mdsys.sdo_point_type(
-120, 43, null), null, null), 'distance=500 unit=FOOT')= 'TRUE'
但这给了我一个错误:
架构 "mdsys" 不存在。我正在使用 cartoDB。有人知道如何执行此查询吗?
我自己想出来的 =)
这是我使用的:
SELECT * FROM questions_radius
WHERE ST_DWithin(the_geom::geography,
ST_SetSRID(ST_MakePoint([user_latitude], [user_longitude]), 4326)::geography, [distance_in_meters])
ORDER BY the_geom <-> ST_SetSRID(ST_MakePoint([user_latitude],[user_longitude]),4326) ASC
LIMIT 100
这适用于查询离用户位置最近的点和多边形。只需提供以米为单位的纬度、经度和距离即可执行查询并完成。它相当快。希望这可以帮助任何想要执行一些很酷的地理空间查询的人。 =)
谁能帮我写一个查询来找到所有最近的多边形 经纬度。
所以我无法提供 lat/long,我想找到所有最近的多边形。
这是我目前拥有的:
SELECT name
FROM questions_radius
WHERE mdsys.sdo_within_distance(
the_geom,
mdsys.sdo_geometry(2001, 8307, mdsys.sdo_point_type(
-120, 43, null), null, null), 'distance=500 unit=FOOT')= 'TRUE'
但这给了我一个错误: 架构 "mdsys" 不存在。我正在使用 cartoDB。有人知道如何执行此查询吗?
我自己想出来的 =)
这是我使用的:
SELECT * FROM questions_radius
WHERE ST_DWithin(the_geom::geography,
ST_SetSRID(ST_MakePoint([user_latitude], [user_longitude]), 4326)::geography, [distance_in_meters])
ORDER BY the_geom <-> ST_SetSRID(ST_MakePoint([user_latitude],[user_longitude]),4326) ASC
LIMIT 100
这适用于查询离用户位置最近的点和多边形。只需提供以米为单位的纬度、经度和距离即可执行查询并完成。它相当快。希望这可以帮助任何想要执行一些很酷的地理空间查询的人。 =)