Adloun

Le langage SQL

Cours · NSI (terminale), chapitre 12 · terminale, spécialité numérique et sciences informatiques · le début du chapitre, la suite sur Adloun

Des données en table : chaque ligne est un enregistrement, chaque colonne un attribut, et l'on peut filtrer ou trier.

Les bases de données relationnelles, étudiées dans le chapitre précédent, organisent l'information sous forme de tables liées entre elles. Pour interroger, modifier et structurer ces données, on utilise un langage spécialisé : le SQL (Structured Query Language). Né dans les années 1970, il est aujourd'hui le standard universel des systèmes de gestion de bases de données relationnelles (SGBDR) comme SQLite, PostgreSQL, MySQL ou Oracle.

Dans ce chapitre, nous apprenons à écrire des requêtes pour extraire des données (SELECT), à les agréger et les regrouper, à combiner plusieurs tables grâce aux jointures, puis à modifier les données (INSERT, UPDATE, DELETE) et enfin à créer la structure des tables (CREATE TABLE). Tous les exemples sont écrits en SQL standard, compatibles notamment avec SQLite.

Pour fixer les idées, nous utiliserons tout au long du chapitre une base de données de bibliothèque. Voici la table Livre qui servira de fil rouge.

idtitreauteuranneeprix
1Le Petit PrinceSaint-Exupéry19438
21984Orwell194910
3La Ferme des animauxOrwell19457
4Fahrenheit 451Bradbury19539
5Le Meilleur des mondesHuxley193211

12.1 Interroger une table : la requête SELECT

12.1.1 Sélection de colonnes

La requête SELECT est le cœur du SQL : elle permet de lire des données dans une ou plusieurs tables.

Définition 12.1La requête SELECT

La forme la plus simple d'une requête de sélection est :


SELECT colonne1, colonne2 FROM nom_table;

Elle renvoie le contenu des colonnes indiquées pour toutes les lignes de la table. On peut remplacer la liste des colonnes par l'étoile * pour obtenir toutes les colonnes.

Exemple 12.2Lire des colonnes

Pour afficher le titre et l'auteur de tous les livres :


SELECT titre, auteur FROM Livre;

Pour afficher la table entière :


SELECT * FROM Livre;

12.1.2 Filtrer les lignes avec WHERE

Définition 12.3La clause WHERE

La clause WHERE permet de ne conserver que les lignes vérifiant une condition :


SELECT colonnes FROM table WHERE condition;

La condition combine des comparaisons (=, <>, <, >, <=, >=), des opérateurs logiques (AND, OR, NOT) et des mots-clés comme LIKE, IN ou BETWEEN.

Exercices du chapitre

La suite du cours · Tous les exercices du chapitre