我有以下的表稱爲locations
有以下欄目:POSTGIS查詢ST_DWithin對經/緯度值
latitude
longitude
現在我想查詢中所有條目在給定緯度/長點的特定半徑內。
SELECT * FROM locations
WHERE ST_DWithin(
ST_MakePoint(longitude, latitude),
ST_MakePoint(-0.63098, 51.18291),
100
);
上面的查詢解釋了我有哪些數據作爲輸入和我必須查詢的數據。
有什麼想法?
你是什麼實際問題? - 如果他們是完全相同的點,則認爲*在另一點內*。你可以玩閾值,但使用['ST_Distance'](https://postgis.net/docs/ST_Distance.html)會更直接恕我直言。 – pozs
問題是,上面的查詢返回表中的所有條目,而不僅僅是從輸入長/緯度座標的'100m'半徑內的條目。 'ST_Distance'只返回2個點之間的距離,我想實現的是從點 –
返回一個特定半徑內的所有位置,這通常是一個WHERE ST_Distance(point_in_table,queried_point)查詢
pozs