Consulta SQL

10/08/2004 - 01:05 por Nicolas | Informe spam
Buenas!, mi pregunta es la siguiente:

Tengo una tabla alumnos con los campos(legajo-PK-
,apellido,nombre)otra tabla cursos (codigocurso-PK-
,nombrecurso,preciocurso)otra inscriptos(legajo-FK-
,codigocurso-FK-) y otra pagos(nrorecibo-PK-,legajo-FK-
,codigocurso-FK-) la tabla tiene una relacion uno a
muchos con la tabla pagos mediante el legajo y tambien
uno a muchos con la tabla inscriptos, mientras que la
tabla cursos tiene una relacion uno a muchos con la tabla
inscriptos por medio del codigocurso. Aclaro que la tabla
inscriptos es una entidad debil o intangible.

yo quisiera saber por medio de SQL lo siguiente:

. Apellidos y Nombres de los alumnos que tienen que se
inscribieron en un curso y no lo pagaron. O sea todos
aquellos que tienen deuda!

Bueno, espero que se haya entendido, sino cualquier duda
preguntenme

desde ya muchas Graciassss!!

Nico.-
 

Leer las respuestas

#1 Javier Loria
10/08/2004 - 02:22 | Informe spam
Hola Nicolas:
Tal vez algo como esto:
SELECT Alumnos.Apellido
, Alumnos.Nombre
, Inscriptos.CodigoCurso
FROM Inscriptos
JOIN Alumnos
ON Inscriptos.Legajo=Alumnos.Legajo
LEFT JOIN Pagos
ON Inscriptos.Legajo=Pagos.Legajo
AND Inscriptos.CodigoCurso=Pagos.CodigoCurso
WHERE Pagos.nrorecibo IS NULL
Se logra con un LEFT JOIN que une a todos los Inscriptos (sin importar
si han pagado o no) con un WHERE IS NULL que quita a los que ya han pagado.
Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda


"Nicolas" wrote in message
news:30ef01c47e65$4e182b60$
Buenas!, mi pregunta es la siguiente:

Tengo una tabla alumnos con los campos(legajo-PK-
,apellido,nombre)otra tabla cursos (codigocurso-PK-
,nombrecurso,preciocurso)otra inscriptos(legajo-FK-
,codigocurso-FK-) y otra pagos(nrorecibo-PK-,legajo-FK-
,codigocurso-FK-) la tabla tiene una relacion uno a
muchos con la tabla pagos mediante el legajo y tambien
uno a muchos con la tabla inscriptos, mientras que la
tabla cursos tiene una relacion uno a muchos con la tabla
inscriptos por medio del codigocurso. Aclaro que la tabla
inscriptos es una entidad debil o intangible.

yo quisiera saber por medio de SQL lo siguiente:

. Apellidos y Nombres de los alumnos que tienen que se
inscribieron en un curso y no lo pagaron. O sea todos
aquellos que tienen deuda!

Bueno, espero que se haya entendido, sino cualquier duda
preguntenme

desde ya muchas Graciassss!!

Nico.-

Preguntas similares