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

Consulta

Estas en el tema de Consulta en el foro de Mysql en Foros del Web. Buenos dias. Tengo una consulta que realizar, pero no doy en el clavo. Se que el resultado tienen que ser 223 registros. Tengo 4 tablas: ...
  #1 (permalink)  
Antiguo 12/05/2010, 06:24
 
Fecha de Ingreso: marzo-2010
Ubicación: Buenos Aires
Mensajes: 59
Antigüedad: 14 años
Puntos: 2
Consulta

Buenos dias.

Tengo una consulta que realizar, pero no doy en el clavo. Se que el resultado tienen que ser 223 registros.

Tengo 4 tablas:

ALUMNOASIGNATURA (nif, codigoasignatura, nota)
ALUMNOS (nif, nombreapellidos)
ASIGNATURAS (codigoasignatura, nombreasignatura, departamento)
DEPARTAMENTOS (departamer, fechaalta, nombre)

Debo realizar una consulta, que me devuelva aquellos alumnos que hayan obtenido 5 o mas en la nota de las asignaturas en las que este matriculado.

He realizado la siguiente consulta:

select distinct ALUMNOASIGNATURA.NIF
from ALUMNOASIGNATURA, ASIGNATURAS
where (ALUMNOASIGNATURA.NOTA >= 5) and (ASIGNATURAS.CODIGOASIGNATURA = ALUMNOASIGNATURA.CODIGOASIGNATURA)
group by ALUMNOASIGNATURA.NIF, ALUMNOASIGNATURA.CODIGOASIGNATURA

Pero el resultado no es el esperado: devuelve 230 registros en lugar de 223.

Gracias por vuestro tiempo.
  #2 (permalink)  
Antiguo 12/05/2010, 06:36
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Consulta

Divide y venceras....

En definitiva lo que quieres es obtener el listado de los alunos que han superado TODAS sus asignaturas.

Creo que lo mas fàcil es hacer a la inversa:

1. Obtengo los que han suspendido alguna asignatura


Código MySQL:
Ver original
  1. FROM ALUMNOASIGNATURA
  2. WHERE nota<5;

2. Obtengo los que NO estan en el grupo anterior

Código MySQL:
Ver original
  1. SELECT nif, nombreapellidos
  2. FROM ALUMNOS
  3.                                FROM ALUMNOASIGNATURA
  4.                                WHERE nota<5);

Si son 223 o no eso lo sabras tu pero esta consulta te da los alumnos que han superado el 5 en TODAS sus asignaturas.

Fuerte... no?

Quim
  #3 (permalink)  
Antiguo 12/05/2010, 07:01
 
Fecha de Ingreso: marzo-2010
Ubicación: Buenos Aires
Mensajes: 59
Antigüedad: 14 años
Puntos: 2
Respuesta: Consulta

Quimfv, muchisimas gracias!

Esa respuesta te la agradecemos una amiga que esta estudiando oposiciones y yo.

(Sólo sé que no sé nada)

Etiquetas: Ninguno
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 10:17.