Bases de Données Relationnelles et SQL

Ludovic Deneuville

Bases de Données Relationnelles et SQL

  • 6h CM
  • 15h TP + 3h TD
  • ludovic.deneuville@ensai.fr
  • bureau 161
  • sur la base des cours de Benjamin Girault

Objectifs

  • Interrogation
  • Création
  • Modélisation
  • Savoir utiliser le langage SQL

SQL

  • Syntaxe simple
  • Efficace
  • Très utilisé

Conventions

  • <...> : texte à remplacer
  • [...] : élément optionnel
  • Une requête se termine par un ;
  • -- Ce qui vient ensuite est commenté

Requêtes SQL jolies

  • retour à la ligne
  • mots clés alignés
  • Mots clés en MAJUSCULE
pasbien.sql
SELECT c.nom AS club, AVG(j.elo) AS moyenne_elo FROM joueuse j INNER JOIN club c USING (id_club) WHERE mail IS NOT NULL GROUP BY c.nom ORDER BY 2 DESC;

bien.sql
SELECT c.nom AS club, 
       AVG(j.elo) AS moyenne_elo
  FROM joueuse j 
 INNER JOIN club c USING (id_club) 
 WHERE j.mail IS NOT NULL 
 GROUP BY c.nom 
 ORDER BY 2 DESC;

Les TP

  • 5 TP + 1 TD
  • Base de données : PostgreSQL
  • Outils : Datalab, cloudBeaver, DBeaver

Ce qu’il faut faire

  • Lire attentivement les consignes
  • Essayer de résoudre par soi même
  • Chercher dans le cours / sur internet
  • Demander de l’aide à ses camarades
  • Demander de l’aide à l’enseignant

À ne pas faire

  • Poster l’énoncé sur ChatGPT
  • Copier / Coller la réponse sans rien comprendre

Évaluation

  • Lundi 6 Janvier 10h
  • Durée : 2h
  • Sur papier
  • Sans documents

Bibliographie