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
Dans un motif LIKE, que représente le caractère générique % ?
ALa fin de la chaîne
BToute suite de zéro caractère ou plus
CExactement un caractère à cette position de la chaîne
DUn chiffre quelconque
2.Facile
Quelle instruction ajoute une nouvelle colonne à une table existante ?
AALTER TABLE
BCREATE COLUMN
CUPDATE TABLE
DINSERT COLUMN
3.Facile
Que renvoie un CROSS JOIN ?
AUniquement les lignes de la première table
BUniquement les lignes qui ne correspondent pas
CToutes les combinaisons de lignes des deux tables
DUniquement les lignes qui correspondent sur une colonne clé commune
4.Moyen
Quelle requête renvoie le salaire le plus élevé de chaque service ?
ASELECT dept, salary FROM emp WHERE salary = MAX(salary)
BSELECT dept, MAX(salary) FROM emp GROUP BY dept
CSELECT dept, MAX(salary) FROM emp ORDER BY dept
DSELECT MAX(dept), salary FROM emp GROUP BY salary
5.Moyen
Quand WHERE EXISTS (sous-requête) est-il vrai pour une ligne ?
AQuand la sous-requête renvoie exactement une ligne
BQuand la sous-requête renvoie au moins une ligne
CQuand la sous-requête ne renvoie aucune valeur NULL
DQuand la sous-requête renvoie un nombre supérieur à zéro
6.Moyen
Que renvoie SELECT name, CASE WHEN grade >= 5,5 THEN 'pass' ELSE 'fail' END FROM results ?
AUne erreur, car CASE n'est pas autorisé dans SELECT
BUniquement les étudiants reçus
CChaque nom avec l'étiquette 'pass' ou 'fail' selon la note
DLe nombre d'étudiants reçus et recalés
7.Difficile
Quelle fonction de fenêtrage attribue 1, 2, 3, ... aux lignes de chaque partition, sans ex æquo ?
ARANK()
BROW_NUMBER()
CCOUNT()
DDENSE_RANK()
8.Difficile
Quel est le résultat de SELECT COUNT(col) FROM t si toutes les valeurs de col sont NULL et que la table contient 10 lignes ?
A0
BUne erreur
CNULL
D10
Corrigé
1. B · Toute suite de zéro caractère ou plus
2. A · ALTER TABLE
3. C · Toutes les combinaisons de lignes des deux tables
4. B · SELECT dept, MAX(salary) FROM emp GROUP BY dept
5. B · Quand la sous-requête renvoie au moins une ligne
6. C · Chaque nom avec l'étiquette 'pass' ou 'fail' selon la note
7. B · ROW_NUMBER()
8. A · 0
Corrigés complets pas à pas : entraînez-vous sur ce thème sur examproblems.com.