Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/10/2015, 06:14
Avatar de gnzsoloyo
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: DUDA tablas N/M

No está mal. No te explicaste claramente en el primer post...
Cita:
Si quisiese hacer una consulta para obtener las cartas con los colores 1 y 3 por ejemplo. ¿Como lo haria?
En ninguna parte dices que sea exclusivamente esos dos en la misma carta.
Si lo que quieres es obtener las cartas donde estén ambos colores, no es tan complejo.


Código MySQL:
Ver original
  1. SELECT c.nombre, chc.color_idcolor
  2. FROM carta AS c
  3. INNER JOIN carta_has_color chc ON chc.carta_idcarta=c.idcarta
  4. WHERE c.idcarta IN(
  5.   SELECT c.idcarta
  6.   FROM carta AS c
  7.   INNER JOIN carta_has_color chc ON chc.carta_idcarta=c.idcarta
  8.   WHERE chc.color_idcolor IN(1, 3)
  9.   GROUP BY c.idcarta
  10.   HAVING COUNT(*) = 2)
  11. ORDER BY c.nombre;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)