Ver Mensaje Individual
  #2  
Antiguo 07-07-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Reputación: 22
andres1569 Va por buen camino
Hola:

Al usar el operador COUNT, debes agrupar la consulta por los campos que aparecen en el SELECT y sobre los que aplicas ningún operador del tipo SUM; AVG, ... Otra cosa, el distinct sobra para este tipo de consultas, y tampoco veo que relaciones la tercera tabla en nigún sitio:

Select A.descripcion, B.nom_espec, count(C.cve_mat)
from planest A, especialidad B, cursos C
where A.cveespec = B.cveespec and B.clave = C.clave
group by A.descripcion, B.nom_espec


Revisa si la tabla de planes de estudio (la C) contiene siempre registros para cualquier especialidad, si no es obligado que sea así, sería conveniente que en vez de estar en la cláusula where estuviera en forma de un left join, para que no invalidara la consulta (si usas where y no existe, simplemente no te devuelve ninguna fila, si usas left join y no existe, te devuelve 0).
__________________
Guía de Estilo
Responder Con Cita