当前位置: 首页 > 面试题库 >

在“ X”公里(或英里)内查找城市

黄逸清
2023-03-14
问题内容

这可能不清楚,也可能不清楚,如果我不在基地或您需要更多信息,请给我评论。也许对于我想要的PHP已经有了解决方案。

我正在寻找一个函数,该函数将从经度或纬度值中增加或减去一个距离。

原因:我有一个包含所有纬度和经度的数据库,并且想要形成一个查询以提取X公里(或英里)内的所有城市。我的查询看起来像这样…

Select * From Cities Where (Longitude > X1 and Longitude < X2) And (Latitude > Y1 and Latitude < Y2)

 Where X1 = Longitude - (distance)
 Where X2 = Longitude + (distance)

 Where Y1 = Latitude - (distance)
 Where Y2 = Latitude + (distance)

我正在使用MySql数据库使用PHP。

也欢迎任何建议!:)


问题答案:

这是一个MySQL查询,可以完全满足您的要求。请记住,像这样的事情通常是近似值,因为地球不是完美的球形,也不考虑山脉,丘陵,山谷等。我们在带有PHP和MySQL的AcademicHomes.com上使用此代码,它返回$内的记录$ latitude,$ longitude的半径英里。

$res = myhtml" target="_blank">sql_query("SELECT
    * 
FROM
    your_table
WHERE
    (
        (69.1 * (latitude - " . $latitude . ")) * 
        (69.1 * (latitude - " . $latitude . "))
    ) + ( 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3)) * 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3))
    ) < " . pow($radius, 2) . " 
ORDER BY 
    (
        (69.1 * (latitude - " . $latitude . ")) * 
        (69.1 * (latitude - " . $latitude . "))
    ) + ( 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3)) * 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3))
    ) ASC");


 类似资料:
  • 问题内容: 注意:尽管我将邮政编码数据库与荷兰邮政编码一起使用,但是此问题与国家/地区无关。 我有一个数据库,其中包含荷兰的每个邮政编码及其x和y坐标(纬度/经度)。 例如,我的邮政编码:具有以下坐标: 现在,我想使用from查找其他所有邮政编码。 例如: 问题在于地球并不完全是圆形的。我发现很多关于计算的教程,但这不是我所需要的。 有人有什么主意吗? 更新 感谢Captaintokyo,我发现了

  • 问题内容: 我是Hibernate Spatial的新手,正在尝试对给定半径内的对象执行简单查询。我已经使用来自Google Maps和其他来源的数据在数据库中创建了许多条目,这些条目的属性分别对应于经度和纬度。此属性在我的Entity类中定义如下: 我现在正在尝试找出如何搜索所有坐标位于距给定点 x 公里半径内的实体对象的方法。例如,我想找到落在该点半径50公里以内的对象(12.34567,-7

  • 问题内容: 我有一个目前约有1万行的数据库。它们都基于邮政编码的中心具有经度/纬度。我发现了一个我正在尝试扩展的查询,但是总的来说它在某种程度上运行良好。但是,在下面的示例中,我试图找到半径25英里以内的事物,这似乎在大多数情况下都是可行的。我的大部分结果都在25英里标准范围内,但是我得到的结果很少,偏离了86英里到800英里。 示例:这是我的中心经度:37.2790669,-121.874722

  • 我在研究空间日期时遇到了一个问题。我有一个包含列的表:对象id及其坐标(纬度和经度,数据类型是几何体)。我需要找到一公里内最大的一组点。我怎么能这么做?

  • 本文向大家介绍使用JavaScript将每加仑的英里数转换为每公升公里,包括了使用JavaScript将每加仑的英里数转换为每公升公里的使用技巧和注意事项,需要的朋友参考一下 问题 我们需要编写一个JavaScript函数,该函数接受以英里/加仑为单位的数字,并返回其等效的km / L。 示例 以下是代码- 输出结果 以下是控制台输出-

  • ; StrStr ; 输入,堆栈顶 = 要查找的字串 ; 堆栈顶-1 = 在该字串中查找 ; 输出,堆栈顶 (替换为字串剩余部分) ; 不改变其它变量值。 ; ; 用法: ; Push "this is a long ass string" ; Push "ass" ; Call StrStr ; Pop $R0 ; ($