mySQL:选择WHERE会导致错误 - 为什么?

问题描述:

我有这个疑问:mySQL:选择WHERE会导致错误 - 为什么?

SELECT `manufacturers`.*, `languages`.*, COUNT(`products`.`id`) AS productcount 
FROM (`manufacturers`) 
WHERE `manufacturers`.`flushed` = `0` 
JOIN `languages` ON `manufacturers`.`lang` = `languages`.`id` 
LEFT OUTER JOIN `products` ON 
`products`.`manuf` = `manufacturers`.`mid` 
GROUP BY manufacturers.id 
ORDER BY `languages`.`id` asc, `manufacturers`.`mid` asc; 

没有WHERE行,一切都很正常,但有了它,我得到在我的脸上泛起了错误1064(语法错误)。我想这与查询中WHERE行的实际位置有关,所以我尝试将它移动,但没有任何运气。

我该怎么办?

凡而来的加入后,该集团之前(连接被认为是from子句的一部分)

检查:

SELECT `manufacturers`.*, `languages`.*, COUNT(`products`.`id`) AS productcount 
FROM (`manufacturers`) 
JOIN `languages` ON `manufacturers`.`lang` = `languages`.`id` 
LEFT OUTER JOIN `products` ON 
`products`.`manuf` = `manufacturers`.`mid` 
WHERE `manufacturers`.`flushed` = `0    -- where comes after joins 
GROUP BY manufacturers.id 
ORDER BY `languages`.`id` asc, `manufacturers`.`mid` asc;