查询语句:
mysql> set @er=6366.564864;#earth’s radius (km)
Query OK, 0 rows affected (0.00 sec)
mysql> set...,但是时间着实蛋疼(由于没有设置条件,mysql进行了表扫描,约200万条记录,你说疼不疼).所以必须修改下思路,圈出大致范围后进行查询....首先要计算出经纬度范围,由于经度这个bitch的存在,我们又得进行三角函数计算:
set @lat=56.14262;
set @lng=37.605853;
set @dist=20;#km
set...18.2296307623964 |
+---------+----------+----------+------------------+
6 rows in set (0.30 sec)
通过结果可以看出查询结果有很大的改善...,但是事实上我们还可以进行优化,因为我们现在所操作的是没有建立索引的数据表,接下来我们改用建立过索引的数据表看看效果:
mysql> set @er=6366.564864;#km
Query OK,