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

Duda al combinar campos de una tabla

Estas en el tema de Duda al combinar campos de una tabla en el foro de Bases de Datos General en Foros del Web. Buenos días. Me gustaría comentaros una duda que me ha surgido al trabajar con Access. El caso es que en una tabla tengo 3 campos ...
  #1 (permalink)  
Antiguo 12/11/2009, 02:48
 
Fecha de Ingreso: noviembre-2009
Mensajes: 2
Antigüedad: 15 años
Puntos: 0
Pregunta Duda al combinar campos de una tabla

Buenos días. Me gustaría comentaros una duda que me ha surgido al trabajar con Access. El caso es que en una tabla tengo 3 campos (campo1, campo2 y campo3) Pues bien, me interesaría saber como obtener aquellos casos en los que para un par de valores de los campos 1 y 2, el campo 3 no es el mismo. Pongo un ejemplo para explicarme:

Campo1 Campo2 Campo3
A B C
A B C
D E F
D E G

En este caso, me interesa obtener las tuplas D,E,F y D,E,G, ya que cuando el campo1 tiene el valor D y el campo2 tiene el valor E, el campo3 no tiene un único valor (en este caso, vale F y G)

Hasta ahora, he empleado dos subconsultas para obtener tuplas con el campo1 y campo2 con los mismos valores, pero no sé como emplearla para obtener aquellos casos donde el campo3 no sea el mismo para dichas tuplas.

¿Alguna sugerencia?

Saludos.
  #2 (permalink)  
Antiguo 12/11/2009, 03:08
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 17 años, 3 meses
Puntos: 18
Respuesta: Duda al combinar campos de una tabla

A ver si con esto te sirve:

SELECT Campo1,Campo2,Campo3
FROM Tabla
GROUP BY Campo1,Campo2,Campo3
HAVING Count(Campo1)=1

Un saludo
  #3 (permalink)  
Antiguo 12/11/2009, 03:24
 
Fecha de Ingreso: noviembre-2009
Mensajes: 2
Antigüedad: 15 años
Puntos: 0
Respuesta: Duda al combinar campos de una tabla

Cita:
Iniciado por Taribo007 Ver Mensaje
A ver si con esto te sirve:

SELECT Campo1,Campo2,Campo3
FROM Tabla
GROUP BY Campo1,Campo2,Campo3
HAVING Count(Campo1)=1

Un saludo
He probado la solución que me propones, pero no me sirve. Muchas gracias por la ayuda.

Me he puesto a darle vueltas y al final he conseguido encontrar una solución. La consulta que he implementado es esta:

SELECT T1.campo1, T1.campo2, T1.campo3
FROM tabla as T1, tabla AS T2
WHERE (((T1.campo1)=T2.campo1) AND ((T1.campo2)=T2.campo2) AND ((T1.campo3)<>T2.campo3));

Es posible que no sea la solución más elegante, pero me sirve ;)
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:17.