MySQL:使用 Join 时出现语法错误?

标签 mysql join syntax-error

你能发现这个查询有什么问题吗?

        SELECT * FROM requests 
        WHERE id = '".$id."' 
        LEFT JOIN request_data ON (requests.id = request_data.request_id) 
        GROUP BY requests.id 

已经研究了一段时间,但似乎无法正确完成!

数据库如下所示:

 -requests
   -id
   -another column
   -and a third one

 -request_data
   -request_id
   -key
   -value

编辑:哦,对了,还有错误:

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 'LEFT JOIN request_data ON (requests.id = request_data.request_id) GROUP BY ' at line 3

有什么想法吗?

最佳答案

WHERE 位于错误的位置。

    SELECT *
    FROM requests 
    LEFT JOIN request_data ON (requests.id = request_data.request_id) 
    WHERE id = '".$id."' 

您可能不需要 GROUP BY ,因为 WHERE 确保只会返回一个 id ,除非以某种方式您依赖于隐藏列功能(您不应该将其视为 the results are undefined )。

关于MySQL:使用 Join 时出现语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7715740/

相关文章:

php - MySQL:如何检索包含撇号的数据

SQL-多表连接并根据条件选择第一条记录

mysql - 连接 MySQL 上的 3 个表来汇总产品的销售额和库存

python - Python 中非本地语句的语法错误

php - PHP解析/语法错误;以及如何解决它们

php - PHP解析/语法错误;以及如何解决它们

php - Mysql/PHP错误: not displaying $username

php - 定时邮件提醒 if/else

mysql - MySQL连接查询问题

mysql - NOT NULL 不适用于自动递增的主键