Las observaciones de jurena son válidas.
Uno de los problemas de poner todos los campos, es saber si realmente necesitas todos esos campos. ASí la consulta es ineficiente.
Además de ello, estás poniendo el mismo nombre alias (mensajes) a una tabla que a una columna del SELECT, lo que puede dar lugar a errores.
Ahora bien, la consulta, tal y cual la pongo, no contiene errores sintácticos, lo que sí me llama la atención es que la misma tabla (temas_table)
maneje también la información de los mensajes...