SQL错误:';您的SQL语法有错误;检查与MySQL服务器版本对应的手册,了解正确的语法;
我有一个sql查询SQL错误:';您的SQL语法有错误;检查与MySQL服务器版本对应的手册,了解正确的语法;,mysql,sql,Mysql,Sql,我有一个sql查询 SELECT sites.id, sites.url, GROUP_CONCAT(categories.name,"|", categories.color SEPARATOR ",") AS categories FROM sites LEFT JOIN categories_data ON sites.id = categories_data.sites_id LEFT JOIN categories ON categories_data.categories_i
SELECT sites.id, sites.url, GROUP_CONCAT(categories.name,"|",
categories.color SEPARATOR ",") AS categories
FROM sites
LEFT JOIN categories_data ON sites.id = categories_data.sites_id
LEFT JOIN categories ON categories_data.categories_id = categories.id
WHERE sites.deleted=0
AND WHERE categories.deleted=0
AND WHERE categories_data.deleted=0
GROUP BY sites.id
我得到这个错误:
Database_Exception [ 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 'WHERE categories.deleted=0 AND WHERE
categories_data.deleted=0 GROUP BY sites.id' at line 5 [ SELECT sites.id,
sites.url, GROUP_CONCAT(categories.name,"|",categories.color SEPARATOR ",")
AS categories FROM sites LEFT JOIN categories_data ON sites.id =
categories_data.sites_id LEFT JOIN categories ON
categories_data.categories_id = categories.id WHERE sites.deleted=0
AND WHERE categories.deleted=0 AND WHERE categories_data.deleted=0 GROUP BY
sites.id ]
这个错误是什么意思?因为您有三个
WHERE
子句。如果有多个条件,则需要使用条件运算符将它们分开
SELECT ...
FROM ... JOIN ...
WHERE sites.deleted = 0 AND
categories.deleted = 0 AND
categories_data.deleted = 0
GROUP BY sites.id
您有多个
WHERE
关键字。第二个错误应该是和,而不是,其中
此错误意味着SQL语句的格式非常不正确,以至于解析器甚至没有尝试为您提供有关如何修复它的具体建议。错误是MySQL解析器告诉您阅读有关如何编写有效SQL select语句的手册:is Dupe: