Module 1 : Comprendre les bases de données
1.1 — Pourquoi les bases de données ? Aperçu
Module 2 : Installation et découverte de PostgreSQL
2.1 — Installer PostgreSQL Aperçu
Module 3 : Le langage SQL — Les fondamentaux
3.1 — SELECT : lire des données Aperçu
Module 4 : Conception et création de tables
4.1 — Clés primaires et identifiants Aperçu
Module 5 : Requêtes SELECT avancées
5.1 — DISTINCT, CASE, COALESCE, NULLIF Aperçu
Module 6 : Jointures SQL
6.1 — INNER JOIN : le cœur des bases relationnelles Aperçu
Module 7 : Agrégation et regroupement avancés
7.1 — GROUP BY approfondi Aperçu
Module 8 : Sous-requêtes et CTE
8.1 — Sous-requêtes scalaires et de liste Aperçu
Module 9 : Fonctions SQL intégrées
9.1 — Fonctions de chaînes Aperçu
Module 10 : Indexation et performances
10.1 — Comprendre EXPLAIN ANALYZE Aperçu
Module 11 : Contraintes avancées et intégrité
11.1 — Domaines et types personnalisés Aperçu
Module 12 : Transactions et concurrence
12.1 — Transactions ACID Aperçu
Module 13 : Vues et vues matérialisées
13.1 — Vues simples et modifiables Aperçu
Module 14 : Procédures stockées et fonctions PL/pgSQL
14.1 — Premiers pas en PL/pgSQL Aperçu
Module 15 : Triggers et événements
15.1 — Créer un trigger simple Aperçu
Module 16 : Sécurité, rôles et permissions
16.1 — Rôles, utilisateurs et GRANT Aperçu
Module 17 : Sauvegarde, restauration et maintenance
17.1 — pg_dump et pg_restore Aperçu
Module 18 : Types de données avancés
18.1 — JSON et JSONB Aperçu
Module 19 : Recherche plein texte (Full-Text Search)
19.1 — tsvector et tsquery Aperçu
Module 20 : Projet final — Conception complète
20.1 — Analyse du besoin et cahier des charges Aperçu

Le reste de la formation est réservé aux inscrits.

S'inscrire gratuitement
Module 3 : Le langage SQL — Les fondamentaux Aperçu gratuit

3.1 — SELECT : lire des données

📋 Objectifs d'apprentissage

  • Écrire une requête SELECT complète avec SELECT, FROM, WHERE, ORDER BY, LIMIT
  • Filtrer avec des opérateurs de comparaison (=, >, <, <>, BETWEEN, IN, LIKE)
  • Trier les résultats avec ORDER BY ASC/DESC

La structure fondamentale

SELECT colonne1, colonne2 FROM table WHERE condition ORDER BY colonne LIMIT n;

C'est la requête la plus importante de SQL. 90% de vos interactions avec une base passeront par SELECT. Chaque clause a un rôle précis :

  • SELECT : quelles colonnes afficher (* pour toutes)
  • FROM : de quelle table
  • WHERE : filtre sur les lignes (optionnel)
  • ORDER BY : tri (optionnel)
  • LIMIT : nombre max de résultats (optionnel)
OpérateurSignificationExemple
=ÉgalWHERE pays = 'France'
<> ou !=DifférentWHERE statut <> 'annulé'
>, <, >=, <=Comparaison numériqueWHERE prix > 100
BETWEEN x AND yIntervalle inclusifWHERE age BETWEEN 18 AND 25
IN (a, b, c)Appartenance à une listeWHERE pays IN ('France','Belgique')
LIKEPattern matchingWHERE nom LIKE 'D%'
IS NULL / IS NOT NULLTest de nullitéWHERE email IS NOT NULL

💡 Exemple concret

-- Clients français de plus de 30 ans, triés par nom
SELECT nom, prenom, email, date_naissance
FROM clients
WHERE pays = 'France' AND age > 30
ORDER BY nom ASC
LIMIT 20;

⚠️ Erreur fréquente

WHERE colonne = NULL — Ça ne retourne JAMAIS rien ! NULL n'est égal à rien, pas même à NULL. Utilisez IS NULL ou IS NOT NULL.

✅ Vérifiez votre compréhension

Q : Que fait WHERE nom LIKE '%son' ?

R : Trouve les noms qui se TERMINENT par "son" (ex: Jackson, Johnson). Le % est un joker "n'importe quelle séquence de caractères".

Ceci est un aperçu gratuit.
Voir la formation complète