Mi conocimiento de MySQL es nulo, la forma en la que estás intentando hacer tu query, me parece que no te dará el resultado que esperas, cuando necesito sacar consultas como la que dices, en SQL-Server, por ejemplo, lo hago de la siguiente manera
SELECT cliente_id, categoria, trabajo_id
FROM TRABAJOS INNER JOIN
(SELECT cliente_id, Max(TRABAJOS.trabajo_id) AS trabajo_id
FROM TRABAJOS
GROUP BY cliente_id) AS MAXTRABAJO
ON TRABAJOS.cliente_id = MAXTRABAJO.cliente_id AND TRABAJOS.trabajo_id = MAXTRABAJOS.trabajo_id
El problema puede ser, según otros mensajes publicados en este foro, es, que las subconsultas en según que versiones de MySQL no funcionan
Un saludo