mysql下出现Unknown column ‘id’ in ‘on clause’的解决方法

这个问题纠结好久,记录下来  

原因:   MySQL5.0 Bug, 要把联合的表用括号包含起来才行:   

SELECT (c.id, a.id, b.id) FROM A a, B b LEFT JOIN C c ON c.a_id = a.a_id AND c.b_id = b.b_id

这句话执行应该是没有错误的,但是Mysql 5 下执行则会出错。  

因为下有这样一个BUG,要把联合的表用括号包含起来才行:   

SELECT (c.id, a.id, b.id) FROM (A a, B b) LEFT JOIN C c ON c.a_id = a.a_id AND c.b_id = b.b_id