SGBD

Bonjour,

Etudiant(stdno,sname,deptino#)
Dep(deptino,dname)
Cours(corsno,cname,deptno#,cmax)
Inscription(stdno#,corsno#,grade)

la question est:les cours sans étudiants inscrits??

ma réponse d'aprés ma résonement est la suivant:

select stdno
From Inscription, Cours,Etudiant
where Inscription.corsno=Cours.corsno
AND Etudiant.stdno<>Inscription.stdno

je veus de demande de me aide est-ce-que ma requete est juste??????,

merci

2 réponses

  1. Toi tu veux savoir les cours alr ta SELECT est fausse je pense que la réponse doit rassembler à ça

    SELECT corsno, deptino d FROM cours
    WHERE NOT EXISTS ( SELECT deptino x FROM etudiant
    WHERE d=x )

    :)
    1. j'ai pas comrie
      s'il vous plait peut expliquer
    2. Est ce que ta essayééé ce que je t donnééé et ca pa marcherr ?!!
    3. j'ai n'a pas logiciel Oracle
      mé j'ai résonne théoriquement,mé la probleme j'etais pas comprie cette partie
      WHERE NOT EXISTS ( SELECT deptino x FROM etudiant
      WHERE d=x )

      merci d'avance
    4. Bon il fauuuut que tu faiiit la liste de tout les etudiants (si tu ve que ça soit plu pro tu doit faire un select pour les etudiants inscrit dans des cours seulement ) avec cette ligne :
      SELECT deptino x FROM etudiant ;

      puis tu vérifie que le cour que va selecter n'apparait pa dans la table des etudiants
      avec:
      SELECT corsno, deptino d FROM cours
      WHERE NOT EXISTS (et la requete précédente)
      et on n'oubliiie paa la jointure a la fin :p
      et de rien Amel :p
    5. pardont
      ou je mettre la jointure
      aprés where d=x
      merci