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

consulta combinada sin repetir registros

Estas en el tema de consulta combinada sin repetir registros en el foro de Bases de Datos General en Foros del Web. necesito sacar de como 3 tablas distintas direcciones de e-mails para hacer un newsleterr $sql="SELECT E.emailremitente, O.email, R.email FROM estadistica_email E, opinion O, opinion_respuestas R"; ...
  #1 (permalink)  
Antiguo 30/11/2005, 09:35
 
Fecha de Ingreso: marzo-2004
Mensajes: 44
Antigüedad: 20 años, 1 mes
Puntos: 0
consulta combinada sin repetir registros

necesito sacar de como 3 tablas distintas direcciones de e-mails para hacer un newsleterr

$sql="SELECT E.emailremitente, O.email, R.email FROM estadistica_email E, opinion O, opinion_respuestas R";

hasta ahi todo ok


pero como hago para que el resultado no me de emails repetidos ??
  #2 (permalink)  
Antiguo 30/11/2005, 10:11
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
no te estendi bien tu pregunta quieres filas totalmente distintas de tu seleccion o que no hayga dos veces un mismo correo en tu seleccion,bueno prueba esto esto te arregla el primer caso:
Código PHP:
$sql="SELECT DISTINCT E.emailremitente, O.email, R.email FROM estadistica_email E, opinion O, opinion_respuestas R"
si fuera el segundo caso tendrias que hacer otra consulta de acuerdo a tus tablas por que con esa consulta no creo que se pueda obtener, cya
PD: seria bueno concer tus tablas, talvez asi se te pueda ayudar mejor
  #3 (permalink)  
Antiguo 30/11/2005, 10:39
 
Fecha de Ingreso: marzo-2004
Mensajes: 44
Antigüedad: 20 años, 1 mes
Puntos: 0
yo tengo en diferentes tablas direcciones de emails, y quiero hacer un listado de TODAS sin que se repitan

las tablas son 3

estadistica_email
id
id_noticia
emaildestinatario


opinion_respuestas
id
texto
email
fecha


correodelectores
id
titulo
texto
email
nombre
fecha



necesitaria sacar los EMAIL de esas tres tablas en un listado y sin que se repitan!
  #4 (permalink)  
Antiguo 30/11/2005, 12:33
 
Fecha de Ingreso: septiembre-2005
Mensajes: 43
Antigüedad: 18 años, 7 meses
Puntos: 0
Esta podria ser una solicion
-------------------------------
select email from Uno
union
select email from Dos
union
select email from Tres
  #5 (permalink)  
Antiguo 30/11/2005, 12:35
 
Fecha de Ingreso: marzo-2004
Mensajes: 44
Antigüedad: 20 años, 1 mes
Puntos: 0
no entendi gabriel!
  #6 (permalink)  
Antiguo 30/11/2005, 13:09
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
es buena idea la que te sugiere GABRIEL seria bueno que revises la documentacion de union, bueno si usas mysql aqui te dejo el link de la documentacion
http://dev.mysql.com/doc/refman/5.0/en/union.html
  #7 (permalink)  
Antiguo 30/11/2005, 16:51
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 4 meses
Puntos: 11
te falto el Distinct en los union

Código:
Select emaildestinatario from estadistica_email
union distinct
select email from opinion_respuestas
union distinct
select email from correodelectores;
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #8 (permalink)  
Antiguo 01/12/2005, 08:40
 
Fecha de Ingreso: marzo-2004
Mensajes: 44
Antigüedad: 20 años, 1 mes
Puntos: 0
Error: You have an error in your SQL syntax near 'distinct select email from opinion_respuestas union distinct select email fro' at line 2


va antes el DISTINCT del SELECT ?
  #9 (permalink)  
Antiguo 01/12/2005, 09:38
 
Fecha de Ingreso: marzo-2004
Mensajes: 44
Antigüedad: 20 años, 1 mes
Puntos: 0
listo.. aca en localhost anda de 10 pero en el servidor no..

resulta que tiene esta version de mysql 3.23.58

y necesita 4+
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 12:50.