Tengo una duda con una consulta yo quiero sacar los grupos de los que no estan en la tabla respuestas donde el tiempo sea el maximo

He sacado los grupos que si estan con

SELECT grupo, fecha FROM `usuario_respuestas` INNER JOIN `preguntas` ON usuario_respuestas.id_pregunta = preguntas.id_pregunta WHERE fecha=(select MAX(fecha) as fecha from usuario_respuestas) GROUP BY preguntas.grupo

y los grupos que no esta en las respuestas, pero como no toma la fecha, si ese grupo existe en una fecha menos me lo mete

SELECT * FROM preguntas
LEFT OUTER JOIN usuario_respuestas
ON usuario_respuestas.id_pregunta = preguntas.id_pregunta
WHERE fecha=(select MAX(fecha) AND usuario_respuestas.id_respuesta IS NULL GROUP BY GRUPO


Alguien tiene idea de como hacer para que me de los grupos que no estan en respuestas donde el tiempo sea el maximo.

en este caso deberia dar como resultado deseado
grupo
3

Código PHP :

preguntas

id_preg        grupo
1              1   
2              1   
3              2   
4              2   
5              3
6              3



Código PHP :

respuestas

id_res   id_preg   fecha
1           1           8
2           2           8
3           3           8
4           4           2
5           5           2