Fiche d’exercices de Bases de données et SQL avec corrigé
Fiche d’exercices de Bases de données et SQL gratuite et imprimable : 8 exercices, du niveau facile au niveau examen, avec corrigé. Imprimez-la ou enregistrez-la en PDF.
Pour les enseignants : gratuite à imprimer, copier et utiliser en classe. Chaque nouvelle fiche a de nouvelles valeurs et son propre corrigé. Un lien vers ExamProblems sur la page de votre cours est apprécié.
Nom: ____________________ Date: ____________
1.Facile
Quelle clause filtre les lignes avant le regroupement ?
AGROUP BY
BWHERE
CHAVING
DORDER BY
2.Facile
Qu'est-ce qu'une clé composée (composite key) ?
AUne clé qui autorise les doublons
BUne clé stockée dans une table séparée
CUne clé générée par la base de données
DUne clé formée de deux colonnes ou plus
3.Facile
Quelle instruction supprime des lignes d'une table ?
ADELETE
BDROP
CREMOVE
DTRUNCATE COLUMN
4.Moyen
Quand WHERE EXISTS (sous-requête) est-il vrai pour une ligne ?
AQuand la sous-requête ne renvoie aucune valeur NULL
BQuand la sous-requête renvoie au moins une ligne
CQuand la sous-requête renvoie un nombre supérieur à zéro
DQuand la sous-requête renvoie exactement une ligne
5.Moyen
Quelle propriété ACID signifie que des transactions concurrentes ne voient pas les modifications inachevées les unes des autres ?
AL'atomicité
BLa durabilité
CLa disponibilité
DL'isolation
6.Moyen
Quelle requête renvoie le salaire le plus élevé de chaque service ?
ASELECT dept, MAX(salary) FROM emp ORDER BY dept
BSELECT MAX(dept), salary FROM emp GROUP BY salary
CSELECT dept, salary FROM emp WHERE salary = MAX(salary)
DSELECT dept, MAX(salary) FROM emp GROUP BY dept
7.Difficile
Quelle fonctionnalité SQL convient le mieux pour trouver tous les employés sous un responsable dans un organigramme de profondeur inconnue ?
AUne contrainte UNIQUE sur manager_id
BUne seule auto-jointure de la table employees sur manager_id
CUne expression de table commune récursive (WITH RECURSIVE)
DUn GROUP BY sur manager_id
8.Difficile
Que renvoie la requête suivante : SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students) ?
ALes étudiants dont la note est supérieure à la note moyenne
BUne erreur, car les sous-requêtes ne sont pas autorisées dans WHERE
CUniquement les étudiants ayant la note la plus élevée
DLa note moyenne de tous les étudiants
Corrigé
1. B · WHERE
2. D · Une clé formée de deux colonnes ou plus
3. A · DELETE
4. B · Quand la sous-requête renvoie au moins une ligne
5. D · L'isolation
6. D · SELECT dept, MAX(salary) FROM emp GROUP BY dept
7. C · Une expression de table commune récursive (WITH RECURSIVE)
8. A · Les étudiants dont la note est supérieure à la note moyenne
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.