Cita: sospecho que tendrá que ver con la eficiencia
No. Tiene que ver con las relaciones establecidas en el ON, y no devuelven los mismos resultados.
INNER JOIN devuelve todo lo que coincide entre la primera y segunda tabla, según se indique en el ON. Es la representación de la junta natural (natural join).
LEFT JOIN devuelve todo lo que exita en la primera tabla (a la izquierda del JOIN), tenga o no relación con la segunda. Los valores no relacionados de la segunda tabla se devuelven como NULL.
RIGHT JOIN es la correspondiente inversa a LEFT JOIN.
Cita: Que forma es mas eficiente o mejor para que mysql procese más rápido ?, a parte de tener llaves Primarias....
Ese es un terreno largo, vasto y muy, pero muy complejo. No existe un método único, ni reglas absolutas.
Hay multitud de elementos que se deben considerar (indices, relaciones, cardinalidad, tipos de datos, selectividad de condiciones, dispersión de la información, etc., etc.), y lo que resulta perfecto para una consulta, puede resultar catastrófico en otra parecida.
Esto puede darte un acercamiento:
http://dev.mysql.com/doc/refman/5.0/...imization.html