www.cftea.com

SQL Server 利用 geography 计算地理位置距离、距我最近排序

千一网络(原创)2017/11/25 16:19:10

SQL Server 有个字段类型为 geography,这个类型存经纬度,就可以利用经纬度排序了。

(注意,还有一个近似类型:geometry,这个是用来计算二维平面的,不适合经纬度)

如何往 geography 存储值?

利用的是 geography::STPointFromText()。

第一个参数 POINT() 里面再跟经度、纬度。

第二个参数 4326 代表 GCS-WGS-1984 坐标系。具体本文后面会列出相关链接。

如何查询?

这个 SQL 语句利用 geo.STDistance(@currentLocation)  < 1000000 限定了 1000 公里以内的数据,然后按由近到远排序。

关键词总结

  • geography::STPointFromText
  • 字段.STDistance
  • POINT

相关阅读

<<返回首页<<