我想知道SQL2008在计算地理数据类型上的距离时使用的算法。SQL2008中用于地理数据类型的距离算法
有几个这样的算法的半正矢和Vincenty,但我已经找到了什么是SQL2008使用actaully没有提及。
我想知道SQL2008在计算地理数据类型上的距离时使用的算法。SQL2008中用于地理数据类型的距离算法
有几个这样的算法的半正矢和Vincenty,但我已经找到了什么是SQL2008使用actaully没有提及。
这完全取决于与该地理类型相关联的Spatial Reference Identifier。
的SRID是代表什么在地理类型完全的单位,并且将决定的坐标系。该系统将指示正在使用哪些算法。
这就是说,在对地理实例执行计算时,SQL Server 2008仅支持一组特定的SRID(请参阅上面链接中标题为“地理实例必须使用支持的SRID”的部分)。
您或许可以从SQL Server 2008用于地理/几何类型的规范Open Geospacial Consortium'sSimple Feature Access specification获得更多信息。
我觉得你感兴趣的地理类型以及如何进行它的距离计算。 本章可能有帮助(以及本博客) http://blogs.msdn.com/edkatibah/archive/2009/12/17/inside-microsoft-sql-sever-2008-t-sql-programming-chapter-14-spatial-data.aspx
Codeplex上还有MS SQLSpatialTools。他们对地理类型的插补功能,可能会给你一个提示他们正在抽油烟机
http://sqlspatialtools.codeplex.com/wikipage?title=Current%20Contents&referringTitle=Home
我可以问你为什么在乎,只要答案正确使用什么样的作用下做什么?
看来你真的很关心的是SQL Server现在如何calulates的距离,但它实际上是如何定义地球上的距离,还有很多另类的定义。最好的参考资料是Michael Kallay Defining edges on a round earth。
艾萨克Kunen还写了一whitepaper关于代表在二维坐标是优秀的好背景阅读圆面。
Michael Kallay的文章似乎不是免费的。 OP询问SQL服务器使用什么算法。是Vincenty吗?你能引用你链接的论文吗? – 2014-05-08 15:28:44
嗨,谢谢! 我们正在使用SRID 4326(WGS84) – Darryl 2010-03-03 02:00:44