9
Chapitre 9 sur 21

Lire des données (SELECT)

Insérer des données, c’est bien. Mais pour les exploiter, il faut savoir les lire. Dans ce chapitre, vous allez apprendre à récupérer des lignes et des colonnes avec SELECT, comprendre FROM, et écrire vos premières requêtes lisibles.

Pourquoi SELECT est la commande la plus utilisée

Une base de données sert à stocker des informations… mais surtout à les retrouver. La commande SELECT est votre outil principal : elle permet d’afficher des données sous forme de tableau.

🔎

Analogie : chercher dans un classeur

Imaginez un classeur rempli de fiches (lignes).
SELECT = “Montre-moi certaines fiches” et éventuellement “Montre-moi seulement certains champs”.

📖

Définition : SELECT

SELECT récupère des données. Vous choisissez quoi afficher (colonnes) et d’où les récupérer (table avec FROM).

La structure minimale d’un SELECT

La forme la plus simple :

SELECT colonne1, colonne2
FROM nom_table;
📌

SELECT
Obligatoire

Liste des colonnes à afficher (ou * pour toutes).

🏷️

FROM
Obligatoire

La table qui contient les données.

🧠

Résultat
À comprendre

Le résultat est un tableau (lignes/colonnes) affiché par votre outil SQL.

🧹

Lisibilité
Bonne pratique

Un SELECT clair vaut mieux qu’un SELECT “magique”. Nommez vos colonnes.

Première requête : afficher toutes les colonnes

Pour afficher toutes les colonnes d’une table :

SELECT *
FROM livres;
⚠️

Attention à SELECT *

* est pratique pour tester, mais dans un vrai projet, on préfère lister les colonnes. C’est plus lisible, plus stable si la table évolue, et parfois plus performant.

Sélectionner seulement certaines colonnes

Vous choisissez exactement ce que vous souhaitez afficher :

SELECT titre, auteur, annee
FROM livres;

Réflexe pro

Posez-vous la question : “De quoi ai-je besoin pour mon écran / mon rapport ?” Ne récupérez que les colonnes utiles.

Renommer une colonne dans le résultat : les alias

Un alias sert à afficher un “joli nom” dans le résultat, sans changer la structure de la table. Cela se fait avec AS (souvent optionnel mais conseillé pour la clarté).

SELECT
  titre AS "Titre du livre",
  auteur AS "Auteur"
FROM livres;
📌

À retenir

L’alias change uniquement le nom affiché dans le résultat, pas la colonne dans la base.

SELECT peut aussi calculer : expressions simples

Vous pouvez faire des calculs et afficher le résultat :

SELECT
  titre,
  pages,
  pages * 2 AS pages_doublees
FROM livres;
💡

Pourquoi c’est utile

Très pratique pour afficher des valeurs transformées : prix TTC, durée en minutes, âge calculé, etc. Vous apprendrez plus tard à faire des calculs plus avancés avec des fonctions.

Guide pas à pas : vérifier ce que vous avez inséré au chapitre 8

1

Afficher tout le contenu d’une table

Exécutez :

SELECT *
FROM livres;

Vérifiez que vos lignes (Le Petit Prince, 1984, Dune…) apparaissent.

2

Afficher seulement les infos utiles

Exécutez :

SELECT titre, auteur
FROM livres;

Objectif : constater que le résultat est plus lisible.

3

Ajouter des alias pour un rendu “rapport”

SELECT
  titre AS "Livre",
  auteur AS "Écrit par"
FROM livres;

Objectif atteint

Vous savez déjà lire et présenter des données, ce qui est la base de 90% des usages SQL.

Erreurs courantes avec SELECT

Erreur : “no such table”

Cause : la table n’existe pas (ou mauvais nom).

Solution : vérifiez le nom exact (singulier/pluriel, accents, etc.).

Erreur : “no such column”

Cause : vous demandez une colonne qui n’existe pas.

Solution : listez les colonnes dans l’onglet structure ou via SELECT *.

Résultat vide (0 ligne)

Cause : la table est vide, ou plus tard un filtre trop strict.

Solution : commencez par SELECT * et vérifiez les données.

Exercice pratique : requêtes SELECT sur la table films

Si vous avez fait l’exercice du chapitre 8, vous avez une table films. Sinon, créez-la et insérez quelques films, puis répondez aux consignes ci-dessous.

Consigne 1

Afficher toutes les colonnes de films.

SELECT * FROM films;

Consigne 2

Afficher seulement titre et annee.

SELECT titre, annee FROM films;

Consigne 3

Afficher titre avec un alias “Film”, et note avec alias “Note/10”.

SELECT titre AS "Film", note AS "Note/10" FROM films;

Bonus

Afficher note et un calcul note * 10 (note sur 100).

SELECT titre, note, note * 10 AS note_sur_100 FROM films;
🧠

Auto-correction

Si une consigne “ne marche pas”, posez-vous 3 questions :
1) Est-ce que la table existe ? 2) Les colonnes existent-elles ? 3) Ai-je bien mis les virgules entre colonnes ?

Récapitulatif du chapitre

Ce que vous savez faire

  • Lire des données avec SELECT et FROM
  • Afficher toutes les colonnes (*) ou seulement certaines
  • Utiliser des alias avec AS pour améliorer le rendu
  • Afficher des calculs simples dans un résultat
  • Identifier les erreurs de base (table/colonne inexistante, résultat vide)

Prochain chapitre : vous apprendrez à filtrer les résultats avec WHERE (ex : afficher seulement les films après 2010, ou les livres disponibles).