使用 Earthdistance 和立方体的地理定位

使用纬度和经度地理位置的数据库中的一个常见要求是查询在某个半径范围内的位置或与另一个位置的距离。有多种方法可以轻松管理此类查询。您可以将 Postgres earthdistance 模块与点或立方体一起使用,也可以使用第三方 PostGIS 扩展。在这一集中,我们将重点关注将 earthdistance 模块与点数据类型一起使用。

earthdistance 模块是官方支持的 Postgres 扩展,必须手动启用。它依赖于 Postgres 多维数据集扩展,因此我将快速安装两者。

create extension if not exists cube;
create extension if not exists earthdistance;

对于此示例,我们将使用地址表,该表具有 float8 或双精度类型的纬度和经度列,以及一些条目

\d addresses
select * from addresses;

我们将看两个示例,了解如何在 earthdistance 模块中使用基于立方体的计算。首先是确定位置之间的距离。第二个是在另一个位置的某个半径范围内寻找位置。

让我们从计算两个位置之间的距离开始。我将使用 "\e" 元命令来使用 vim 作为我的查

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值