Informatique

TD SQL

TD SQL Corrige
Schéma relationnel de la base de données : ETUDAINT (numetu, nom, prenom, datenaiss, rue, cp, vi e! "ATIE#E (codemat, i$e e, coef! E%#EU&E (numepreuve, datepreuve, ieu, codemat'! N(TATI(N (numetu', numepreuve', note!

Question n) *
Liste de tous es +tudiants,

Correction
SELECT * FROM ETUDIANT ;

Question n) Liste de tous es +tudiants, c ass+e par ordre a p.a$+tique inverse,

Correction
SELECT * FROM ETUDIANT ORDER BY nom DESC ;

Question n) /
Li$e + et coefficient (e0prim+ en pourcentage! de c.aque mati1re,

Correction
SELECT libelle, coef*100 FROM MATIERE ;

Question n) 2
Nom et pr+nom de c.aque +tudiant,

Correction
SELECT nom, !enom FROM ETUDIANT ;

DEU3 "IAS

4 *

Question n) < Nom.$e BET"EEN &/000101101& AND &/000102130& . &D. !enom. on(&.&. pr+nom et vi e des +tudiants dont a vi e contient a c. Question n) 8 Liste des notes sup+rieures ou +ga es 6 *9.-(e !e.Informatique TD SQL Question n) 5 Nom et pr+nom des +tudiants domici i+s 6 L7on. $ille FROM ETUDIANT "#ERE $ille LI4E &5ll5& . Correction SELECT nom. Correction SELECT !enom FROM ETUDIANT "#ERE nom IN 6&D.a=ne > >.uin -992. Correction SELECT no(e FROM NOTATION "#ERE no(e)%10 .anvier et e /9 . Question n) : Liste des +preuves dont a date se situe entre e *er . Durand ou "artin.!-n. DEU3 "IAS 4 - . Question n) ? %r+noms des +tudiants de nom Dupont. Correction SELECT * FROM E*REU+E "#ERE . !enom FROM ETUDIANT "#ERE $ille%&L'on& . &M-!(in&7 . Correction SELECT nom.

em-(%MATIERE8co.e no(e: in.$e. MATIERE "#ERE E*REU+E8co. Question n) ** Nom$re tota d@+preuves. NOTATION "#ERE ETUDIANT8n. Question n) */ Liste des +preuves (num+ro.me(.(e!min. Correction SELECT SUM6coef7 FROM MATIERE .me(.ll77. libelle FROM E*REU+E.e:< FROM NOTATION #A+IN= 666NOTATION8No(e7 I: N. Correction SELECT nom. Question n) *5 DEU3 "IAS 4 / . . no(e FROM ETUDIANT. .me !e.-(e !e. Question n) *Nom$re de notes ind+termin+es (NULL!..%NOTATION8n.acune e nom et e pr+nom de @+tudiant qui @a o$tenue. !enom.7 AS 9Nomb!e . Question n) *2 Liste des notes en pr+cisant pour c.$e. Correction SELECT n. Correction SELECT Co. date et ieu! inc uant e i$e + de a mati1re.me(.Informatique TD SQL Question n) *9 Somme des coefficients de toutes es mati1res.n(6NOTATION8n. lie.. Correction SELECT COUNT6*7 FROM E*REU+E .em-( .

=ROU* BY nom.aque +tudiant (indiquer e nom et e pr+nom!. !enom . !enom.$e%E*REU+E8n. !enom FROM ETUDIANT.me(. Question n) *? "o7ennes des notes pour es mati1res (indiquer e i$e +! comportant p us d@une +preuve.me(.me(. libelle FROM ETUDIANT. MATIERE "#ERE ETUDIANT8n. NOTATION "#ERE ETUDIANT8n.%NOTATION8n. !enom. NOTATION "#ERE ETUDIANT8n. E*REU+E AS e. A+=6no(e7 FROM MATIERE AS m. NOTATION AS n DEU3 "IAS 4 2 . SELECT DISTINCT nom.%NOTATION8n. AND no(e%/0 .%NOTATION8n. Correction SELECT nom. NOTATION "#ERE ETUDIANT8n. !enom.me !e.acune e nom et e pr+nom de @+tudiant qui @a o$tenue et e i$e + de a mati1re concern+e. NOTATION. Correction SELECT nom. Question n) *< "o7ennes des notes de c.$e AND E*REU+E8co.me(. Question n) *: "o7ennes des notes de c.Informatique TD SQL Liste des notes en pr+cisant pour c.me(. AND NOTATION8n. Correction SELECT nom.me(. Correction SELECT libelle. A+=6no(e7 AS mo'enne FROM ETUDIANT. E*REU+E.em-(%MATIERE8co. c ass+es de a mei eure 6 a moins $onne. =ROU* BY nom.me(. !enom ORDER BY A+=6NOTATION8no(e7DESC .aque +tudiant (indiquer e nom et e pr+nom!.me !e. A+=6no(e7 FROM ETUDIANT.me(.em-( Question n) *8 Nom et pr+nom des +tudiants qui ont o$tenu au moins une note +ga e 6 -9. no(e.%NOTATION8n.

numetu GH ALL (SELECT N(TATI(N. TD SQL Question n) -9 "o7ennes des notes o$tenues au0 +preuves (indiquer e num+ro d@+preuve! oA moins de 8 +tudiants ont +t+ not+s.me !e.me !e.note E*-!F Requête imbriquée (la sous requête renvoie 1 ou plusieurs tuples:utilisez [NO ! "N.me !e.$e AND no(e IS NOT NULL =ROU* BY e8n.numetu = (SELECT N(TATI(N.me !e.em-(%e8co.$e.numetu B#(" N(TATI(N CDE#E N(TATI(N.$e #A+IN= COUNT6*7>2 . Requête imbriquée (la sous requête renvoie au plus 1 tuple : utilisez =. Correction SELECT e8n. >.numetu B#(" N(TATI(N CDE#E N(TATI(N.note E*-!F Noms &es étu&iants n(a)ant pas obtenu la note 1' SELECT nom B#(" ETUDIANT CDE#E ETUDIANT.numetu B#(" N(TATI(N CDE#E N(TATI(N.me !e.numetu B#(" N(TATI(N CDE#E N(TATI(N.$e7)1 .me !e. NOTATION AS n "#ERE e8n. #N% ) Noms &es étu&iants qui ont obtenu la note 1' SELECT nom B#(" ETUDIANT CDE#E ETUDIANT.Informatique "#ERE m8co. <>) SELECT nom B#(" ETUDIANT CDE#E ETUDIANT.note E*-!F Noms &es étu&iants &ont la note n(est pas rensei*née SELECT nom B#(" ETUDIANT CDE#E ETUDIANT.$e =ROU* BY libelle #A+IN= COUNT6DISTINCT e8n.numetu = ANY (SELECT N(TATI(N.numetu IN (SELECT N(TATI(N.em-( AND e8n. NO "N- DEU3 "IAS 4 5 .note IS NULL!F Notez que les +lauses = #N% et <> #N% +orrespon&ent respe+tivement .#$$.$e%n8n. <.me !e. "N et . A+=6no(e7 FROM E*REU+E AS e.$e%n8n.