Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/08/2011, 14:16
Avatar de Batan
Batan
 
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 7 meses
Puntos: 63
Union entre tablas

Hola muy buenas.
Bueno os comento mi problema.
Tengo una base de datos access que tiene esta estructura.
Cita:
tabla correos
id
Correo

Tabla noticias
id
noticias

Tabla correosNoticias
idCorreo
idNoticias
Tengo una pequeña aplicacioón que manda un mail con las noticas a los correos que se sucribe cada usuario. Uno las tablas mediante de este modo
Código SQL:
Ver original
  1. SELECT palabras.palabra FROM palabras INNER JOIN (correos INNER JOIN correosPalabras ON correos.id = correosPalabras.idCorreo) ON palabras.Id = correosPalabras.idPalabra WHERE correos.id = correosPalabras.idCorreo

Mi código hasta el momento es este
Código ASP:
Ver original
  1. Set rs = cn.execute("SELECT correo FROM correos WHERE correos.id IN (SELECT correosPalabras.idCorreo FROM correosPalabras)")
  2. do while not rs.eof
  3.     response.write rs("correo") & " ha recibido "
  4.     set rs2 = cn.execute("SELECT palabras.palabra FROM palabras INNER JOIN (correos INNER JOIN correosPalabras ON correos.id = correosPalabras.idCorreo) ON palabras.Id = correosPalabras.idPalabra WHERE correos.id = correosPalabras.idCorreo")
  5.     do while not rs2.eof
  6.         response.write rs2("palabra")
  7.     rs2.movenext
  8.     loop
  9. rs.movenext
  10. response.write "<br />"
  11. loop
Primero llamo a los correos que vayan a recibir noticias.
Despues por cada correo recorro las noticias a las que estan suscritos y mando un mail.

Mi problema esta en que manda las noticias, pero manda cada noticia segun el número de usuarios suscritos a esa noticia, o algo menos eso creo, por todas las pruebas que hice. Creo que la sentencia de para unir las tablas las tengo mal echa, podria ser ese el problema?

Gracias por su tiempo, saludos