UPDATE avec sous-requête : compter les appréciations
PrepaSup
Enonce
Imagine qu'on ajoute une colonne nb_appreciations à la table Notes. Écris une requête UPDATE qui calcule pour chaque évaluation le nombre réel d'appréciations correspondantes dans la table Classes.
PrepaSup
Notes(id, id_user, matiere, date_eval, note)
Colles(id, id_user1, id_user2, date_colle)
Classes(id, id_note, id_user, appreciation, date_conseil)
Dates au format YYYY-MM-DD. Notes sur 20.
📖 Rappel de cours
Un UPDATE dont la valeur affectée est calculée par une sous-requête corrélée : elle se réévalue pour chaque ligne mise à jour.
⚠ Le piège : Un UPDATE sans WHERE touche toute la table. Avant d'exécuter, on transforme mentalement la requête en SELECT pour vérifier ce qu'elle atteint — sur une base réelle, l'erreur est irréversible.
← Exercices SQL pour la prépa — bases de données en CPGE
Exercices du meme theme
- HAVING avec sous-requête : filières au-dessus de la moyenne
- CTE récursive : chaîne de colles depuis l'élève 1
- INSERT ... SELECT : archiver les anciennes évaluations
La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.