Introduction
Dans le monde contemporain, les bases de données jouent un rôle central dans la gestion de l’information. Le langage SQL (Structured Query Language) est le langage standard permettant d’interroger, de modifier et de gérer les données contenues dans ces bases. Cette leçon présente les principales clauses SQL utilisées pour interagir avec des bases relationnelles : SELECT, FROM, WHERE, JOIN, INSERT, UPDATE et DELETE. Nous aborderons également quelques compléments utiles comme DISTINCT et ORDER BY. Vous apprendrez à formuler des requêtes claires, efficaces et sûres, dans le respect des bonnes pratiques.
Les requêtes d’interrogation en SQL
Syntaxe générale
Une requête SQL d’interrogation suit généralement cette structure :
Cette syntaxe peut être enrichie par d'autres clauses, selon les besoins.
Les clauses SELECT et FROM
La clause SELECT permet de spécifier les colonnes à extraire, tandis que la clause FROM indique la table concernée.
Exemple : extraire toutes les colonnes de la table etudiants :
Il est recommandé de sélectionner uniquement les colonnes nécessaires, pour une meilleure lisibilité et des performances accrues.
La clause DISTINCT permet d’éliminer les doublons dans les résultats :
La clause WHERE
La clause WHERE permet de filtrer les résultats selon une condition.
Exemple : sélectionner les étudiants âgés de plus de 18 ans :
Elle peut être enrichie avec des opérateurs logiques (AND, OR, NOT) et des comparateurs (=, <, >, <=, >=, <>).
La clause ORDER BY
La clause ORDER BY permet de trier les résultats.
Exemple : trier les étudiants par âge croissant :
Pour un tri décroissant, on utilise DESC.
La clause JOIN
Dans une base relationnelle, les données sont souvent réparties sur plusieurs tables liées par des clés étrangères. La clause JOIN permet de combiner ces tables.
Exemple d’une jointure entre les tables etudiants, inscriptions et cours :
Cette requête utilise une jointure interne implicite (INNER JOIN). D’autres types de jointures existent (comme LEFT JOIN, RIGHT JOIN, FULL JOIN) et permettent d’élargir les résultats selon les besoins spécifiques.
À retenir
Les clauses SELECT, FROM, WHERE, JOIN, ORDER BY et DISTINCT permettent de construire des requêtes précises et efficaces pour interroger une ou plusieurs tables relationnelles.
Les requêtes de modification en SQL
La clause INSERT
La clause INSERT permet d’ajouter une nouvelle ligne dans une table.
La clause UPDATE
La clause UPDATE permet de modifier des données existantes.
Il est impératif d’utiliser la clause WHERE pour limiter la modification aux lignes ciblées. En l’absence de cette clause, toutes les lignes de la table seraient modifiées, ce qui pourrait entraîner une perte d’intégrité des données.
La clause DELETE
La clause DELETE permet de supprimer une ou plusieurs lignes d’une table.
Là encore, l’utilisation de WHERE est indispensable pour éviter de supprimer l’ensemble des données de la table.
À retenir
Les clauses INSERT, UPDATE et DELETE permettent respectivement d’ajouter, de modifier et de supprimer des lignes. Une rigueur absolue est requise dans l’usage de WHERE pour garantir la sécurité des opérations.
Conclusion
Le langage SQL est incontournable pour manipuler les bases de données relationnelles. Il offre une syntaxe puissante, claire et expressive à travers ses principales clauses : SELECT, FROM, WHERE, JOIN, ORDER BY, DISTINCT, INSERT, UPDATE et DELETE. Leur maîtrise est indispensable pour la spécialité NSI et pour tout usage professionnel des données. Une pratique régulière, associée à une vigilance sur les conditions de modification ou de suppression, permet d’en exploiter pleinement les capacités.