1
A
回答
1
也許這可以幫助你:http://www.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL
這是一個很好的介紹。或者只是谷歌mysql distance queries
,你會發現一些教程。
如果您有可能並希望更容易,請切換到支持開箱即用距離查詢的PostgreSQL。
+0
非常感謝 – xRobot 2010-02-09 23:35:33
2
這是我們的。您可能需要修改它的表結構。我們查找零售地點(和便利設施),而不是城市,但最難的部分是「在距離最近的地方」,這在本聲明中起作用。
CREATE PROCEDURE [dbo].[GetNearbyLocations] @CenterLatitude FLOAT, @CenterLongitude FLOAT
AS
DECLARE @CntXAxis FLOAT
DECLARE @CntYAxis FLOAT
DECLARE @CntZAxis FLOAT
SET @CntXAxis = COS(RADIANS(@CenterLatitude)) * COS(RADIANS(@CenterLongitude))
SET @CntYAxis = COS(RADIANS(@CenterLatitude)) * SIN(RADIANS(@CenterLongitude))
SET @CntZAxis = SIN(RADIANS(@CenterLatitude))
SELECT LocationId, LocationName, Address, City, State, Zip, Phone, Latitude, Longitude,
hasATM, hasCarWash, hasDiesel, hasE85, is24hr, hasTrendar, hasWiFi, isTravelCenter, isMiniTravelCenter, isTruckerFriendly, hasScale, hasHotFood,
ProxDistance = 3961 * ACOS(dbo.XAxis(latitude, longitude)*@CntXAxis + dbo.YAxis(latitude, longitude)*@CntYAxis + dbo.ZAxis(latitude)*@CntZAxis)
FROM Locations
WHERE latitude IS NOT NULL
ORDER BY ProxDistance ASC
GO
編輯 - 添加(對不起,我錯過了這些原本)
-- USER-DEFINED FUNCTIONS
-- XAxis #########################################
CREATE FUNCTION [dbo].[XAxis] (@lat float, @lon float)
RETURNS float
AS
BEGIN
RETURN COS(4 * (4 * atn2(1, 5) - atn2(1, 239))/180 * @lat) * COS(4 * (4 * atn2(1, 5) - atn2(1, 239))/180 * @lon)
END
CREATE FUNCTION [dbo].[YAxis] (@lat float, @lon float)
RETURNS float AS
BEGIN
RETURN COS(4 * (4 * atn2(1,5) - atn2(1,239))/180 * @lat) * SIN(4 * (4 * atn2(1,5) - atn2(1,239))/180 * @lon)
END
CREATE FUNCTION [dbo].[ZAxis] (@lat float)
RETURNS float AS
BEGIN
RETURN SIN(4 * (4 * atn2(1,5) - atn2(1,239))/180 * @lat)
END
0
您需要NYC的經緯度,或者您想分析的任何城市。那麼只需使用數學來計算兩組座標之間的英里數。在Excel公式是
getDistance(latitude1, longitude1, latitude2, longitude2)
https://gis.stackexchange.com/questions/88484/excel-distance-calculation
相關問題
- 1. 過濾城市的經緯度與其他城市的距離(經緯度)?
- 2. 按城市或經度和緯度
- 3. 序言:城市之間的距離
- 4. 數據庫距離城市表
- 5. Android - 兩座城市之間的距離
- 6. 想要使用城市的經度和緯度來表示我們城市的城市
- 7. 如何使用latitute和經度
- 8. Toast名稱和距離地圖中心最近的城市的距離
- 9. 從城市名稱獲取經緯度
- 10. 從經緯度獲取城市名稱
- 11. 從距離計算經度
- 12. 如何計算兩個國家之間的距離以及國家與城市之間以及城市與城市之間的距離?
- 13. 獲取特定城市的緯度和經度android
- 14. 緯度和經度放置在.NET中的名稱或城市
- 15. Google的GeoCode將城市狀態轉換爲經度經度
- 16. 經過許多城市
- 17. SQL 2003距離緯度經度
- 18. 向緯度或經度添加距離
- 19. 從經緯度得到國家,地區和城市名稱(PHP)
- 20. 經緯度和時區的主要城市名單
- 21. php中的兩個城市之間的距離
- 22. 如何通過postgis計算城市之間的距離?
- 23. 獲取多個城市之間的距離
- 24. 城市列表之間的計算距離算法
- 25. 如何通過PowerShell計算不同城市之間的距離?
- 26. 如何使用緯度和經度計算距離和方位?
- 27. 獲取基於距離和度數的經度緯度組合
- 28. 計算距離另一緯度/經度點米的緯度和經度
- 29. iPhone中的Google地圖 - 經度和緯度的城市和州名稱
- 30. 從城市和州輸入獲取經度和緯度的快速方法
順便說一句,我強烈建議你接受回答您的問題。否則,人們不會幫你那麼多。只要看看你的問題,並接受那些幫助你解決問題的答案。 – 2010-02-09 23:45:54