Php 纬度/经度MySQL查询产生错误(#1064)
我正在测试我在StackOverflow上发现的代码,该代码使用lat/long根据距离(以英里为单位)获取行。使用此方法的所有问题和答案都不能解决我在数据库中运行此查询时遇到的问题Php 纬度/经度MySQL查询产生错误(#1064),php,mysql,trigonometry,Php,Mysql,Trigonometry,我正在测试我在StackOverflow上发现的代码,该代码使用lat/long根据距离(以英里为单位)获取行。使用此方法的所有问题和答案都不能解决我在数据库中运行此查询时遇到的问题 SELECT *, ( 3959 * acos( cos( radians('42.3581') ) * cos( radians( lat ) ) * cos( radians( long ) - radians('-71.0636') ) + sin( radians('42.3581') ) * sin( r
SELECT *, ( 3959 * acos( cos( radians('42.3581') ) * cos( radians( lat ) ) * cos( radians( long ) - radians('-71.0636') ) + sin( radians('42.3581') ) * sin( radians( lat ) ) ) ) AS distance FROM geo_top_cities HAVING distance < 25 ORDER BY distance LIMIT 0 , 20
我试过在lat和long坐标周围使用单引号,没有单引号,等等。我甚至试过删除括号中的空格,但没有改变任何东西
long
是MySQL中的一个关键技术。你需要把它围起来 我有一种感觉,那是显而易见的。非常感谢。
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'long ) - radians('-71.0636') ) + sin( radians('42.3581') ) * sin( radians( lat )' at line 1