Ver Mensaje Individual
  #4 (permalink)  
Antiguo 16/03/2010, 12:42
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Conteo de Pregutnas por Materia

Cita:
no, no me funciona, no se ejecuta la consulta, gracias por el apoyo :D
No dices que te sale ni cual es el error.

Dices que tienes 2 tablas así
Código MySQL:
Ver original
  1. mysql> desc materias;
  2. +------------+---------+------+-----+---------+-------+
  3. | Field      | Type    | Null | Key | Default | Extra |
  4. +------------+---------+------+-----+---------+-------+
  5. | id_materia | int(11) | YES  |     | NULL    |       |
  6. | materia    | text    | YES  |     | NULL    |       |
  7. +------------+---------+------+-----+---------+-------+
  8. 2 rows in set (0.01 sec)
  9.  
  10. mysql> desc preguntas;
  11. +-------------+---------+------+-----+---------+-------+
  12. | Field       | Type    | Null | Key | Default | Extra |
  13. +-------------+---------+------+-----+---------+-------+
  14. | id_pregunta | int(11) | YES  |     | NULL    |       |
  15. | id_materia  | int(11) | YES  |     | NULL    |       |
  16. +-------------+---------+------+-----+---------+-------+
  17. 2 rows in set (0.01 sec)

si tienes estos registros

Código MySQL:
Ver original
  1. mysql> select *from materias;
  2. +------------+-------------+
  3. | id_materia | materia     |
  4. +------------+-------------+
  5. |          1 | español     |
  6. |          2 | matematicas |
  7. |          3 | biologia    |
  8. +------------+-------------+
  9. 3 rows in set (0.00 sec)
  10.  
  11. mysql> select *from preguntas;
  12. +-------------+------------+
  13. | id_pregunta | id_materia |
  14. +-------------+------------+
  15. |           1 |          1 |
  16. |           2 |          1 |
  17. |           3 |          1 |
  18. |           4 |          2 |
  19. |           5 |          2 |
  20. |           6 |          3 |
  21. +-------------+------------+
  22. 6 rows in set (0.00 sec)

Significa que deben haber 3 preguntas de español, 2 de matemáticas y 1 de biología

Si ejecutas la consulta que te doy lo obtienes

Código MySQL:
Ver original
  1. mysql> SELECT
  2.     -> M.MATERIA,
  3.     -> COUNT(P.ID_PREGUNTA)
  4.     -> FROM
  5.     -> PREGUNTAS P
  6.     -> INNER JOIN
  7.     -> MATERIAS M
  8.     -> ON
  9.     -> M.ID_MATERIA=P.ID_MATERIA
  10.     -> GROUP BY
  11.     -> M.MATERIA;
  12. +-------------+----------------------+
  13. | MATERIA     | COUNT(P.ID_PREGUNTA) |
  14. +-------------+----------------------+
  15. | biologia    |                    1 |
  16. | español     |                    3 |
  17. | matematicas |                    2 |
  18. +-------------+----------------------+
  19. 3 rows in set (0.00 sec)

Si no es eso, te estoy entendiendo mal.

saludos tampiko
__________________
Without data, You are another person with an opinion.
W. Edwads Deming