Con join es muy sencillo y mucho mas optimo..
Un ejemplo sencillo en 2 tablas que aplica para n tablas y que son totalmente equivaletes en la salida.
Código sql:
Ver originalSELECT tabla1.campos,tabla2.campos FROM tabla1,tabla2
WHERE tabla1.codigo=tabla2.codigo;
Es equivalente a
Código sql:
Ver originalSELECT tabla1.campos,tabla2.campos FROM tabla1 INNER JOIN tabla2
ON tabla1.codigo=tabla2.codigo;
Con respecto al error, donde nice near 'error' se refiere a un error de sintaxis. No puedes hacer igualaciones despues de una sentencia group by.
Postea la consulta exactamente como la ejecutas desde mysql y te muestra ese error.