[英]How to translate a PostGIS query to MySQL spatial query
我需要翻譯這個 PostGIS 查詢:
SELECT boundary
ST_Intersects(ST_SetSRID(ST_Buffer(ST_MakePoint(11.255492,43.779251),0.002), 4326), ST_GeomFromKML(boundary)) as intersect,
FROM
mytable
WHERE
ST_Intersects(ST_SetSRID(ST_Buffer( ST_MakePoint(11.255492,43.779251),0.002), 4326), ST_GeomFromKML(boundary))
LIMIT 1
到帶有空間數據的 MySQL。
我試過這個,但它不起作用:
SELECT
boundary,
ST_Intersects(Buffer('POINT(11.7094335,44.2754631)', 2), GeomFromText(boundary)) as intersect
FROM
mytable
WHERE
ST_Intersects(Buffer('POINT(11.7094335,44.2754631)', 2), GeomFromText(boundary))
MySQL boundary
列包含以下格式的數據:
POLYGON((11.752094222227 44.322710250414,11.753712975677 44.322710250414,11.753712975677 44.321900873689,11.752094222227 44.321900873689,11.752094222227 44.322710250414))
我究竟做錯了什么?
我通過反復嘗試找到了答案......這解決了問題:
SELECT
boundary,
ST_Intersects(GEOMFROMTEXT(boundary), ST_Buffer(POINT(11.752094222227, 44.322710250414), 2)) as intersect
FROM
mytable
WHERE
ST_Intersects(GEOMFROMTEXT(boundary), ST_Buffer(POINT(11.752094222227, 44.322710250414), 2))
我希望這對未來的用戶有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.