Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/03/2014, 03:38
Avatar de JoseAlejandro_Realza
JoseAlejandro_Realza
 
Fecha de Ingreso: agosto-2008
Ubicación: Maracay - Venezuela
Mensajes: 192
Antigüedad: 15 años, 9 meses
Puntos: 2
Select 2 campos a or b sin repetir

Hola que tal, Saludos para todos, consulto por aca ya que llevo un dia entero sin conseguir la solucion correcta como la requiero, porque las diferentes formas que he hecho, siempre tiene una falla.

En un sistema, he desarrollado un modulo de mensajes privado entre usuarios, donde uno le puede escribir al otro y este responderle. Logro mostrar la conversacion entre ambos usuarios. Hasta aqui todo bien. El asunto se complica cuando en la pagina principal de los mensajes, quiero listarlos de la siquiente manera.

Necesito que la busqueda seleccione el id de un usuario sea este emisor o receptor, pero que solo me muestre un resultado por cada conversacion. Por tanto que me muestre solo el ultimo mensaje por cada conversacion, ya sea el emisor o receptor. No se si aqui fui lo suficientemente claro, pero el asunto quedaria algo como: Select emiter = id or receiver = id group by emiter,receiver

Código SQL:
Ver original
  1. SELECT * FROM messages_private WHERE emiter = 2 OR receiver = 2 GROUP BY emiter,receiver ORDER BY created_at DESC

El problema de esa sentencia, es que me va a devolver 4 registros en vez de 2. Por ejemplo,
Código HTML:
-- emiter ---   receiver--
      1             2
      2             1
      1             3
      3             1
Espero puedan ayudarme con esta sentencia que no consigo resolver. Muchas gracias
__________________
Tu Guía Empresarial http://www.empresarial.org.ve Soluciones Empresariales

Atte: José Alejandro Realza