草庐IT

Geolocation

全部标签

mysql - 按邻近度排序结果(带坐标和半径)

给定一个包含4个圆的数据库,其中每个圆都有一个半径和一个地理定位中心:id|radius|latitude|longitude---+--------+----------+----------1|3|40.71|100.232|10|50.13|100.233|12|39.92|100.234|4|80.99|100.23注意:为了简单起见,每个圆圈的经度都相同。假设我们在圆圈2上,我想根据latitude找到附近的每个圆圈/longitude坐标和radius每个圈子的。比如根据纬度/经度坐标,我们有这样的顺序:圈1(因为接近:9.42)圈3(因为接近:10.21)圈4(因为接近:

php - 找到离给定地址最近的位置

我在CakePHP中构建了一个列出企业的应用程序。大约有2000个条目,每个业务的经纬度坐标都在数据库中。我现在正在尝试解决搜索功能。将有一个输入框,用户可以在其中输入街道地址、城市或邮政编码,然后我希望它返回从数据库中找到的11个最近的企业。我该怎么做? 最佳答案 我使用YahooGeoPlanetAPI识别与用户输入的搜索词相对应的地点。这通常会匹配多个地点,因此您必须将它们呈现给用户,让他们选择正确的地点。然后,一旦您知道了正确的位置,并且它是YahooAPI提供的经纬度,您就可以使用haversineformula获得离用户

php - 找出最近的用户 MySQL

我有一个名为users的数据库,其中包含列latitude和longitude,我想找出最近的用户(用户在users表)$_POST提供的某个经纬度50km半径范围内。你能告诉我怎么做吗?是否需要使用某个特定的数学函数,或者MySQL中的函数,如latitude_compare()之类的? 最佳答案 你可以这样做:SELECT*,(ACOS((SIN(RADIANS(ref_latitude))*SIN(RADIANS(latitude)))+(COS(RADIANS(ref_latitude))*COS(RADIANS(latit

php - 有效ip->location查询

我有两个表:一个是来自ipinfodb.com的ip_group_city,其中包含用于确定IP位置的ip_start编号,另一个是“访问”,其中包含有关包含“ip”列的网站访问者的信息。我需要通过检查“访问”表中每个IP的区域代码来选择前10个区域代码(来自ip_group_city)。现在我正在将“访问”中的所有IP加载到一个数组中,并使用该IP信息通过以下方式查询ip_group_city:SELECTregion_codeFROMip_group_cityWHEREip_start我无法创建某种嵌套查询来为我完成这项工作,因为现在速度有点慢:)-在我的笔记本电脑xampp(AM

MySQL函数计算两个经纬度之间的距离

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。如果您的数据库中存储了纬度和经度,并且需要计算两个坐标之间的距离。如何使用MySQL函数计算它?

MySql 使用 Float 数据类型存储地理坐标

我有一个存储经度和纬度坐标的表(谷歌地图),我将列定义为float但是当我尝试插入值-61.45859899999999和10.28289时,它们被四舍五入为-61.46和10.30。我如何修改列以按原样保存数据。我正在使用mysqltoad。下面是表格的代码:CREATETABLE`tblGeoCodes`(`recNo`int(11)NOTNULLAUTO_INCREMENT,`longLocation`float(30,2)DEFAULTNULL,`latLocation`float(30,2)DEFAULTNULL 最佳答案

java - 将 IP 地址范围转换为两个 BIGINT 以加快查找速度

我正在开展一个项目,我们需要在其中执行IP地址查找。为此,我们已经获得如下所示的数据集,接下来的步骤是将此数据集(可能是csv文件)填充到MySql表中。下面是包含列的数据集示例-ip_addresscountryregioncitymetro-codelatitudelongitudepostal-codecountry-coderegion-codecity-codecontinent-codecountry-code24.32.116.116usatxclarksville62333.6103-95.04987542684044349186us65.29.108.232usami

使用 POINT 的 Mysql 空间距离 - 不工作

我的目标是使用mysqlPOINT(lat,long)在数据库中查找附近的实体。我正在尝试做类似本教程底部的事情http://www.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL.这是我得到的:表:CREATETABLEmark(idINTUNSIGNEDNOTNULLAUTO_INCREMENTPRIMARYKEY,nameVARCHAR(20)DEFAULTNULL,locPOINTNOTNULL,SPATIALKEYloc(loc))ENGINE=MyISAM;插入一些测试数据:INSERTINTOmark(loc,n

mysql - 查询 MySQL 以获取给定英里半径内的纬度和经度坐标

我目前有一个结构如下的MySQL表:idnamelonlat--------------------------------1Mark-76.31652840.0360272John-95.99510241.257163Paul-82.33703629.6450954Dave-82.33703629.6450955Chris-76.31652840.036027我目前查询数据库以查看用户位置是否在给定位置的特定英里半径内的方法是这样做的。functionHaversine($lat_from,$lon_from,$lat_to,$lon_to){$radius=6371000;$del

mysql - Rails 和 MySQL 上经纬度的最佳列类型

我想知道在MySQL+Rails上存储纬度/经度的最佳列类型是什么。精度必须足以存储从移动设备和/或地理编码器获得的每一位纬度/经度。为了获得最佳查询性能,存储要求应该最低。来自谷歌官方文档:http://code.google.com/apis/maps/articles/phpsqlajax_v3.htmlWiththecurrentzoomcapabilitiesofGoogleMaps,youshouldonlyneed6digitsofprecisionafterthedecimal.Tokeepthestoragespacerequiredforyourtableatami