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

Obtener Registros Que Tengan Distinto Valor En un Campo

Estas en el tema de Obtener Registros Que Tengan Distinto Valor En un Campo en el foro de Mysql en Foros del Web. Buenas noches, tengo que recurrir otra ves a la inteligencia masiva, otra vez a ForosDelWeb. Ojala puedan ayudarme!! Tengo una tambla, que es asi: NOMBRE ...
  #1 (permalink)  
Antiguo 27/05/2014, 22:47
 
Fecha de Ingreso: noviembre-2007
Mensajes: 191
Antigüedad: 17 años
Puntos: 0
Obtener Registros Que Tengan Distinto Valor En un Campo

Buenas noches, tengo que recurrir otra ves a la inteligencia masiva, otra vez a ForosDelWeb. Ojala puedan ayudarme!!

Tengo una tambla, que es asi:

NOMBRE TABLA: mensajes_privados

Campos:
id_incremental
mensaje
id_autor_uno
id_autor_dos

Yo necesito listar todos los mensajes, que tengan diferentes autores, es decir, que tengan diferentes "id_autor_uno". En caso que halla mas de un mensaje que tengan el mismo valor en "id_autor_uno", que solo se muestre el primero que se encontro.

Pero lo complicado esta recien por venir, si el valor del campo "id_autor_uno" es igual a "error", se debe tener en cuenta el campo "id_autor_dos" para evitar la repeticion del mensaje.

Por ejmplo, estan estos mensajes:

id_incremental = 1
mensaje = 'Mensaje 1'
id_autor_uno = 'Juan'
id_autor_dos = '123456'

id_incremental = 2
mensaje = 'Mensaje 2'
id_autor_uno = 'Pedro'
id_autor_dos = '23452'

id_incremental = 3
mensaje = 'Mensaje 3'
id_autor_uno = 'Pedro'
id_autor_dos = '45785'

id_incremental = 4
mensaje = 'Mensaje 4'
id_autor_uno = 'error'
id_autor_dos = '39480'

id_incremental = 5
mensaje = 'Mensaje 5'
id_autor_uno = 'error'
id_autor_dos = '123456'


Con estos mensajes mostraria el 1, 2 y 4.
El 3 no se muestra porque tiene como autor a 'Pedro'.
El 5 no se muestra porque tiene como autor a 'error' y el autor_dos es el mismo autor_dos que el mensaje 1 (que ya se mostro antes).
Aclaro que el mensaje 4 se muestra porque aunque tiene 'error', el autor_dos es distinto a todos.

Ojala se halla entendido, se que es un lio y no se como resolverlo.
Gracias!!!
  #2 (permalink)  
Antiguo 28/05/2014, 16:20
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 7 meses
Puntos: 300
Respuesta: Obtener Registros Que Tengan Distinto Valor En un Campo

aunque no lo he probado, intenta esto:
Código MySQL:
Ver original
  1. SELECT id_incremental,
  2. mensaje,
  3. IF(id_autor_uno = 'error', id_autor_dos, id_autor_uno) autor
  4. FROM mensajes_privados GROUP BY autor

Última edición por jurena; 30/05/2014 a las 08:09
  #3 (permalink)  
Antiguo 29/05/2014, 07:56
 
Fecha de Ingreso: noviembre-2007
Mensajes: 191
Antigüedad: 17 años
Puntos: 0
Respuesta: Obtener Registros Que Tengan Distinto Valor En un Campo

Muchisimas gracias, llego a la oficina y la pruebo y vuelvo a comentar para ver como funciono.
Saludos!!

Etiquetas: campo, distinto, registros, tabla, valor
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 14:03.