Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Registros duplicados

Estas en el tema de Registros duplicados en el foro de Mysql en Foros del Web. Buenas, estoy programando un chat en php y ajax. Al tener que listar los mensajes de un usuario x se me genera el siguiente inconveniente: ...
  #1 (permalink)  
Antiguo 30/03/2014, 02:52
 
Fecha de Ingreso: octubre-2009
Mensajes: 40
Antigüedad: 14 años, 5 meses
Puntos: 0
Registros duplicados

Buenas, estoy programando un chat en php y ajax. Al tener que listar los mensajes de un usuario x se me genera el siguiente inconveniente: no se como evitar registros duplicados. La tabla del chat tiene 4 campos, id, us1,us2 y fecha, us1 indica el usuario que envia el mensaje mientras que us2 el que lo recibe. Lo que necesito es obtener el ultimo registro de cada interaccion entre dos usuarios. Gracias
  #2 (permalink)  
Antiguo 31/03/2014, 01:32
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Registros duplicados

Código MySQL:
Ver original
  1. SELECT us1,us2, max(fecha) ultimo
  2. FROM tblChat
  3. GROUP BY us1,us2;

Esto seria la última fecha (espero que sea datetime) en que se counicaron .... luego

Código MySQL:
Ver original
  1. SELECT tC.id, tC.us1,tC.us2,tC.fecha,tC.mensaje
  2. FROM tblChat tC INNER JOIN
  3.        (SELECT us1,us2, max(fecha) ultimo
  4.          FROM tblChat
  5.          GROUP BY us1,us2) Sbc
  6.     ON tC.us1=Sbc.us1
  7.   AND tC.us2=Sbc.us2
  8.   AND tC.fecha=Sbc.fecha;
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: campo, duplicados, php, registro, registros, tabla, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:20.