Hola, espero estén bien.
 
Tengo una tabla con la siguiente estructura:
 
mysql> show columns from prueba;
+---------+--------------+------+-----+-------------------+-----------------------------+
| Field   | Type         | Null | Key | Default           | Extra                       |
+---------+--------------+------+-----+-------------------+-----------------------------+
| id      | bigint(20)   | YES  | MUL | NULL              |                             |
| user    | varchar(64)  | YES  |     | NULL              |                             |
| msg     | varchar(160) | YES  |     | NULL              |                             |
| status  | tinyint(1)   | YES  |     | NULL              |                             |
| fecha   | timestamp    | NO   |     | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
| coment | varchar(60)  | YES  |     | NULL              |                             |
+---------+--------------+------+-----+-------------------+-----------------------------+
 
su función es que el usuario cuyo ID NO es consecutivo, da de alta, se le asigna un ID azaroso, el usuario pone comentarios y se guarda la fecha del sistema, puede mandar mensajes a otros usuarios etc, bueno el campo status es para poner una bandera de si ya fué despachado o no.
 
el asunto es que quiero hacer una consulta mediante la cual me diga si un usuario ha escrito el mismo comentario N veces en un lapso de 24 hrs para poder discriminar esos comentarios extras (flooding)
 
la idea del query sería:
id               user  mensaje                     status    count(*)
123123  juan01 saludos a todos              1            2
434334  pepito   sql es facil                      NULL     1
545454  _pelon  www.forosdelweb.com    1           8
 
como podría hacer esto?
 
hasta ahorita he jugado con select user,mensaje, count(*) from prueba group by mensaje;
 
pero no da los resultados deseados :( 
  
 

