muestra el último comentario que solo 1 comentario por usuario [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Seleccione los 3 registros más recientes donde los valores de una columna son distintos 8 respuestas

Tengo una tabla de comentarios normal:

| id | comment | date | user | post | status |

Quiero obtener mis 10 últimos comentarios con solo 1 comentario por usuario, quiero decir algo como esto:

Tengo estos datos:| id | comment | date | user | post | | 1 | text1 | 2016-04-01| 1 | 1 | | 2 | text2 | 2016-04-02| 2 | 1 | | 3 | text3 | 2016-04-03| 1 | 2 | | 4 | text4 | 2016-04-04| 4 | 3 | | 5 | text5 | 2016-04-04| 3 | 5 | | 6 | text6 | 2016-04-05| 2 | 4 | | 7 | text7 | 2016-04-07| 5 | 3 | | 8 | text8 | 2016-04-10| 4 | 9 | | 9 | text9 | 2016-04-11| 3 | 7 | | 10 | text10 | 2016-04-12| 5 | 8 |

y quiero obtener esto:| 10 | text10 | 2016-04-12| 5 | 8 | | 9 | text9 | 2016-04-11| 3 | 7 | | 8 | text8 | 2016-04-10| 4 | 9 | | 6 | text6 | 2016-04-05| 2 | 4 | | 3 | text3 | 2016-04-03| 1 | 2 |

Yo uso esta declaración SQL:

SELECT  *
FROM  `comments`
GROUP BY  `user` 
ORDER BY MAX(`id`) DESC

Esto obtiene comentarios con el orden correcto para el usuario pero el orden incorrecto para la fecha del comentario:| 7 | text7 | 2016-04-07| 5 | 3 | | 9 | text9 | 2016-04-11| 3 | 7 | | 4 | text4 | 2016-04-04| 4 | 3 | | 6 | text6 | 2016-04-05| 2 | 4 | | 1 | text1 | 2016-04-01| 1 | 1 |

Respuestas a la pregunta(2)

Su respuesta a la pregunta