postgresql STdintance 计算经纬度距离用的地球半径是多大
时间: 2024-06-07 08:10:00 浏览: 223
在PostgreSQL中,ST_Distance函数用于计算两个点之间的距离。这个函数的计算方法是基于球体的,因此需要指定地球的半径。默认情况下,PostgreSQL使用的是WGS84椭球体的平均半径,即6371.01公里。如果你需要使用其他半径,可以通过设置相应的SRID来实现。例如,如果你想使用地球的极半径(6356.7523公里)作为距离计算的半径,可以使用SRID 4326来指定。具体的计算方法可以参考PostgreSQL的文档。
相关问题
PostgreSQL计算两个经纬度间距
很高兴回答您的问题!对于计算两个经纬度之间的距离,可以使用PostgreSQL中的earthdistance模块。具体的计算公式为:earth_distance(ll_to_earth(lat1, lng1), ll_to_earth(lat2, lng2))
其中,lat1和lng1是第一个经纬度的纬度和经度,lat2和lng2是第二个经纬度的纬度和经度。
希望我的解答对您有帮助!
postgresql ST_Dinstince 计算两个经纬度的距离
在 PostgreSQL 中可以使用 PostGIS 扩展来计算两个经纬度之间的距离。具体可以使用 ST_Distance 函数,示例如下:
```sql
SELECT ST_Distance(
'POINT(116.404, 39.915)'::geography,
'POINT(121.4737, 31.2304)'::geography
) / 1000 as distance_in_km;
```
其中 `POINT(lon, lat)` 是一个地理位置坐标,使用 `::geography` 可以将其转换为地理坐标。ST_Distance 函数返回的结果单位是米,除以 1000 可以得到千米单位的距离。
需要注意的是,使用 PostGIS 扩展前需要先安装和启用该扩展。可以使用以下命令进行安装和启用:
```sql
CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;
```
执行以上命令后,PostGIS 扩展就会被安装并启用。
阅读全文