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