jjzjj

sql - 两个坐标之间的距离,我怎样才能简化这个和/或使用不同的技术?

我需要编写一个查询,使我能够从提供的位置找到一定范围(英里)内的所有位置。表格是这样的:id|name|lat|lng于是我一直在研究,发现:thismysqlpresentation我已经在大约有100行的表格上对其进行了测试,而且还会有更多!-必须是可扩展的。我首先尝试了一些更简单的方法://justsometestdatathiswouldberequiredbyuserinputset@orig_lat=55.857807;set@orig_lng=-4.242511;set@dist=10;SELECT*,3956*2*ASIN(SQRT(POWER(SIN((orig.la

MySQL 存储函数出现故障,但作为独立查询工作

我有一个基本查询,根据thisdiscussion计算两个坐标之间的距离.它作为独立查询似乎运行良好,但当我尝试将其作为存储函数运行时,它返回奇怪的结果(通常为null或99.9999...)。独立查询是:SELECTlat,lng,(6371*acos(cos(radians(32.113277))*cos(radians(lat))*cos(radians(lng)-radians(34.799259))+sin(radians(32.113277))*sin(radians(lat))))ASdistance_km,(6371000*acos(cos(radians(32.113

php - 如何使用坐标将标记移动 100 米

我有2个坐标。坐标1是一个“人”。坐标2是目的地。如何将坐标1向坐标2靠近100米?这将用于cron作业,因此仅包括php和mysql。例如:Personisat:51.26667,3.45417Destinationis:51.575001,4.83889我如何计算Person的新坐标更近100米? 最佳答案 使用Haversine计算两点之间的差值,单位为米;然后按比例调整人物坐标的值。$radius=6378100;//radiusofearthinmeters$latDist=$lat-$lat2;$lngDist=$lng

php - Mysql 近距离查询

选项$lat='25.7742658';$lng='-80.1936589';$miles=30;查询SELECT*,(3959*acos(cos(radians($lat))*cos(radians(lat))*cos(radians(lng)-radians($lng))+sin(radians($lat))*sin(radians(lat))))ASdistanceFROMlocationsHAVINGdistance我有一个包含4列的数据库表:唯一标识城市名纬度(lat)经度(lng)我正在使用上面的查询返回距离指定坐标指定英里数以内的位置。它似乎有效,但我不确定它有多准确。我

mysql - 如何使用带有 MySQL 的 Haversine 公式测量距离?

我从GoogleMapsReverse-GeocodingAPI获取纬度和经度,然后我需要这样的东西:mysql_query("SELECTusers.*,".mysql_distance_column($lat,$lng)."FROMusersORDERBYDISTANCE";functionmysql_distance_column($lat=40,$lng=-73){$defaultLatitudeColumn='user_lat';$defaultLongitudeColumn='user_lng';$defaultColumnName='user_distance';retu

php mysql比较long和lat,返回10英里以下的

嘿,我想使用纬度和经度值找到2个位置之间的距离(以英里为单位),并检查它们是否在彼此的10英里半径范围内。当用户登录时,他们的纬度/经度值会保存在session中$_SESSION['lat']$_SESSION['long']我有两个函数这个计算出以英里为单位的距离并返回一个四舍五入的值functiondistance($lat1,$lng1,$lat2,$lng2){$pi80=M_PI/180;$lat1*=$pi80;$lng1*=$pi80;$lat2*=$pi80;$lng2*=$pi80;$r=6372.797;//meanradiusofEarthinkm$dlat=$

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 - 在 MySQL 中使用空间 POINT 类型时的 Lon/Lat Order

在MySQL中设置POINT时正确的顺序是什么?即使是SO问题中的答案也有所不同:Movinglat/lontextcolumnsintoa'point'typecolumn是吗POINT(latlon)或POINT(lonlat)据我所知,它应该是第一个版本(经纬度),因为POINT以x和y为参数,但我找不到确切的证据。 最佳答案 正如人们在这里看到的https://stackoverflow.com/a/5757054/1393681顺序是(lonlat)。lon基本上是y轴,lat是x,如果我看我的地球仪,但是lon是沿着x轴

iphone - 两个lat long ios之间距离的准确性

我正在使用-(CLLocation)distanceFomLocation:(CLLocation)和Haversine公式计算两个经纬度坐标之间的距离。但它没有给出正确的结果。我正在使用核心位置框架来找出实际相距1米的两个位置的经纬度,但上面的公式给出的距离有时为40m,有时为30m,依此类推。我已经将所需的精度设置为十米。我正在使用iPhone4s设备。只是想知道用于计算距离的方法-(CLLocation)distanceFomLocation:(CLLocation)的准确度是多少?我必须计算10米范围内的距离。 最佳答案 公

如何使用Google API与使用LAT和LON一起查找“持续时间”

我使用示例Bellow尝试了GoogleAPI:https://maps.googleapis.com/maps/api/directions/json?origin=75+9th+Ave+New+York,+NY&destination=MetLife+Stadium+1+MetLife+Stadium+Dr+East+Rutherford,+NJ+07073&departure_time=1541202457&traffic_model=best_guess它可以正常工作,但需要使用LAT和LON而不是实际地址进行相同的示例以进行起始和结束。在使用LAT和LON的情况下进行类似于上述相同的