通过坐标定位 5 英里半径内的建筑物
本指南详细介绍了如何高效检索给定坐标 5 英里半径内的所有建筑物。
第 1 步:优化数据存储
使用几何或地理数据类型存储建筑物位置数据。这显着提高了空间查询性能并防止数据类型转换问题。
第 2 步:使用 ST_DWithin 或 ST_Distance
两个函数有利于距离计算:
-
ST_DWithin: 此函数有效地确定几何图形是否落在指定距离内。 要查找 (-4.6314, 54.0887) 5 英里范围内的建筑物:
SELECT name, longitude, latitude FROM building WHERE ST_DWithin('POINT(-4.6314 54.0887)'::geography, ST_MakePoint(longitude, latitude), 8046.72); -- 8046.72 meters = 5 miles
-
ST_Distance: 此函数计算以米为单位的距离。 使用以下命令将米转换为英里:
distance * 0.000621371
。 对于 (-4.6314, 54.0887) 5 英里范围内的建筑物:SELECT name, longitude, latitude, ST_Distance('POINT(-4.6314 54.0887)'::geography, ST_MakePoint(longitude, latitude)) * 0.000621371 AS distance_miles FROM building WHERE distance_miles <= 5;
第 3 步:关键考虑因素
- 在 ST_MakePoint 中保持正确的顺序:经度、纬度。
- ST_Distance 计算绕过空间索引。 在 SELECT 子句中使用它可以避免性能瓶颈。
- Amazon Athena 在 ST_Distance 中使用度数进行距离计算。
以上是如何使用坐标查找 5 英里半径内的建筑物?的详细内容。更多信息请关注PHP中文网其他相关文章!

本文讨论了使用MySQL的Alter Table语句修改表,包括添加/删除列,重命名表/列以及更改列数据类型。

文章讨论了为MySQL配置SSL/TLS加密,包括证书生成和验证。主要问题是使用自签名证书的安全含义。[角色计数:159]

文章讨论了流行的MySQL GUI工具,例如MySQL Workbench和PhpMyAdmin,比较了它们对初学者和高级用户的功能和适合性。[159个字符]

本文讨论了使用Drop Table语句在MySQL中放下表,并强调了预防措施和风险。它强调,没有备份,该动作是不可逆转的,详细介绍了恢复方法和潜在的生产环境危害。

本文讨论了在PostgreSQL,MySQL和MongoDB等各个数据库中的JSON列上创建索引,以增强查询性能。它解释了索引特定的JSON路径的语法和好处,并列出了支持的数据库系统。

文章讨论了使用准备好的语句,输入验证和强密码策略确保针对SQL注入和蛮力攻击的MySQL。(159个字符)


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 Linux新版
SublimeText3 Linux最新版

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

WebStorm Mac版
好用的JavaScript开发工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器