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

Consulta relación muchos a muchos !!

Estas en el tema de Consulta relación muchos a muchos !! en el foro de Mysql en Foros del Web. Hola tengo las siguientes entidades : Misiones , Logros. Donde Una misión puede tener varios logros. Por otro lado tengo UsuariosxMisiones Donde un usuario tiene ...
  #1 (permalink)  
Antiguo 29/05/2012, 09:31
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 2 meses
Puntos: 15
Consulta relación muchos a muchos !!

Hola tengo las siguientes entidades :

Misiones , Logros.

Donde Una misión puede tener varios logros.

Por otro lado tengo UsuariosxMisiones Donde un usuario tiene varias misiones , el problema es que debo llevar el conteo de cuantos logros de cada misión a cumplido y cuales , no se como deberia relacionar las tablas.

saludos
  #2 (permalink)  
Antiguo 29/05/2012, 10:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Consulta relación muchos a muchos !!

Cita:
Una misión puede tener varios logros.
Queda una pregunta que tu descripción no aclara: ¿Un logro puede serlo de diferentes misiones, o debe serlo de una sola?
En el primer caso, es una relación N:N y faltaría una tabla, además de que la consulta se complica.
en el segundo es mas o menos simple. Sería algo como:
Código MySQL:
Ver original
  1. SELECT U.idusuario, M.idmision, COUNT(L.idmision) LogrosMisiones
  2. FROM usuarios U LEFT JOIN usuariosxmisiones UM ON U.idusuario = UM.idusuario
  3.           INNER JOIN misiones M ON M.idmision = UM.idmision
  4.           INNER JOIN logros L ON M.idmision = L.idmision
  5. GROUP BY U.idusuario, M.idmision;

La diferencia radica en que en el primer caso faltaría un LEFT JOIN entre las misiones y una tabla mision_logro, y la de logros se relaciona con esa tabla también.
Recuerda que siempre, una relación N:N entre dos entidades genera una tabla relacional que no aparece en los diagramas del modelo lógico, sino en el diagrama del modelo físico.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 29/05/2012, 10:42
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 2 meses
Puntos: 15
Respuesta: Consulta relación muchos a muchos !!

Hola muchas gracias , no , un logro no puede serlo de varias misiones.

Mira te voy a poner un ejemplo real de lo que estoy haciendo

La mision es "Construye un Parque Nuevo"

Los logros son "coloca un arboretum" y "Coloca 3 decoraciones"

Donde se lleva la cuenta de cada logro.

Con ese fin es que estoy armando la Base de datos , pero me lié un poco.

Saludos

Etiquetas: muchos, tabla
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 06:20.