Php 在数据库中查找最近的经度
我想用经度和纬度搜索,如果我想搜索某个地方(经度50.212221145,纬度30.02111454),那么我想要的结果是谁在我们的数据库中接近这些值(大约20公里),我该怎么做: 检查这个Php 在数据库中查找最近的经度,php,mysql,Php,Mysql,我想用经度和纬度搜索,如果我想搜索某个地方(经度50.212221145,纬度30.02111454),那么我想要的结果是谁在我们的数据库中接近这些值(大约20公里),我该怎么做: 检查这个 SELECT id, ( 6371 * acos( cos( radians(37) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(50.2122211145) ) + sin( radians(30.0211145
SELECT id, ( 6371 * acos( cos( radians(37) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(50.2122211145) ) + sin( radians(30.02111454) ) * sin( radians( latitude ) ) ) )
AS distance
FROM markers
HAVING distance < 20 ORDER BY distance LIMIT 0 , 20;
选择id,(6371*acos(弧度(37))*cos(弧度(纬度))*cos(弧度(经度)-弧度(50.212221145))+sin(弧度(30.0211454))*sin(弧度(纬度)))
作为距离
从标记
距离小于20次,距离限值为0,20;
在查询“我有
lat
和lng
中查看这个和这个@Ritu”,将它们更改为数据库的相应列名。比如纬度
和经度
。我想你的数据库里没有数据。所有的地方都很远。我的意思是距离超过25英里。将25替换为2500
。以上是正在编写的查询。我在我的项目中使用了。其工作原理是填充数据库以获取更多值。请参见上面的屏幕截图