首页 > 解决方案 > 位置查找器的 MySQL #1064 错误

问题描述

我试图通过以下搜索找到最接近用户的 10 个条目:

  $data_query = mysqli_query($db, "SELECT *
  111.045 * DEGREES(ACOS(COS(RADIANS(latpoint))
             * COS(RADIANS(latitude))
             * COS(RADIANS(longpoint) - RADIANS(longitude))
             + SIN(RADIANS(latpoint))
             * SIN(RADIANS(latitude)))) AS distance_in_km
 FROM merchants
 JOIN (
 SELECT  33.889676  AS latpoint,  151.193024 AS longpoint
) AS p ON 1=1
ORDER BY distance_in_km
LIMIT 15");

但是我收到以下错误:

#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 '111.045 * DEGREES(ACOS(COS(RADIANS(latpoint))
             * COS(RADIANS(la' at line 2

我试着SELECT *改成SELECT latitude, longitude(使用 `` 但 Stack Overflow 不断弄乱语法)但它并没有做太多。

我是新手PHPMySQL所以我对这里可能出现的问题感到非常陌生。

干杯:)

标签: phpmysqlsql

解决方案


如果您还想选择所有内容,请在第一个之后添加逗号*SELECT *, 111.045 ...

如果没有,请先删除*


推荐阅读