creo que no entiendes nada...
si el error que obtienes no es de sintaxis de PHP, entonces no es problema de PHP...
seguramente hay algo mal en la definición de tus tablas, así como en la misma sintaxis de tu consulta SQL, por lo cual recibes tal error...
no entiendo que tiene que ver PHP con todo esto, ¿según tu opinión porque consideras posible que sea un problema de PHP también?
de algún modo la función
mysql_error() significa que se trata de un error de MySQL, y por eso no se llama
php_error(), lo cual significa que todo mensaje devuelto por dicha función corresponde a un error a nivel del RDBMS, así de sencillo!!
al final todo el problema se reduce a la base de datos, no al código php con el cual ejecutas consultas a la base de datos...