Interroger efficacement une base de données SQL peut être un défi sans une compréhension approfondie des commandes.
Sans cela, vous risquez de perdre du temps sur des requêtes inefficaces ou des résultats incomplets.
Cet article vous guide à travers l’ordre SELECT, une commande clé pour extraire et gérer vos données SQL avec précision.
Appréhendez les fondamentaux du langage SQL pour savoir assimiler ses fonctions standards.
Syntaxe de base de l'ordre SELECT SQL
L’ordre SELECT est l’une des commandes les plus fondamentales et les plus puissantes du Langage d’Interrogation de Données (LID). Il vous permet de récupérer des données à partir d’une ou plusieurs tables d’une base de données. Dans cet axe, vous allez :
- Connaître la syntaxe basique de l’ordre SELECT :Comprendre la structure de base de cette commande.
- Réaliser des extractions de données monotable :Apprendre à extraire des données d’une seule table.
- Traiter les colonnes contenant des valeurs NULL :Savoir comment gérer les valeurs manquantes dans vos requêtes.
- Utiliser les opérateurs arithmétiques et l’opérateur de concaténation :Apprendre à effectuer des calculs et à combiner des chaînes de caractères.
- Syntaxe de base
SELECT [DISTINCT]{*,[champ colonnes[AS] alias1 [,...]}
FROM nom_table
- Exemple d’utilisation :
Supposons que vous ayez une table appelée Employés avec les colonnes no_employe, rend_compte, nom, prenom, fonction, titre, date_naissance, date_embauche, salaire et commission .
- Utilisation de l’astérisque :Si vous souhaitez récupérer toutes les colonnes d’une table, vous pouvez écrire :
SELECT *
FROM employes ;
Après l’exécution de la requête dans le logiciel Microsoft SQL Server Management Studio (MSSMS), voici le résultat obtenu :
- Utilisation partielle :Si vous souhaitez récupérer les noms, prénom et fonction de tous les employés, vous pouvez utiliser la requête suivante :
SELECT nom, prenom, fonction
FROM employes;
Après l’exécution de la requête dans le logiciel Microsoft SQL Server Management Studio (MSSMS), voici le résultat obtenu :
- SQL DISTINCT :
Supposons que vous ayez une table appelée client avec des colonnes nom, prénom et ville.
identifiant | prenom | nom | ville |
---|---|---|---|
1 | Linus | Torvalds | Paris |
2 | Ada | Lovelace | Paris |
3 | Tim | Berners-Lee | Lyon |
4 | Bjarne | Stroustrup | Marseille |
5 | Grace | Hopper | Marseille |
Tableaux 1 : table client
Si vous souhaitez récupérer les villes sans répétition, vous pouvez utiliser la clause DISTINCT pour obtenir des résultats uniques. Voici comment procéder :
SELECT DISTINCT ville
FROM client;
Sur la table que nous avons créée, voici le résultat obtenu :
ville |
---|
Paris |
Lyon |
Marseille |
Tableaux 2 : résultat affiché après l’exécution de la requête DISTINC
- SQL AS (alias)
Dans le langage SQL il est possible d’utiliser des alias pour renommer temporairement une colonne ou une table dans une requête. Cette astuce est particulièrement utile pour faciliter la lecture des requêtes.
- Exemple d’utilisation
Prenons l’exemple d’une table de client qui contient plusieurs champs et qui vous permet de renommer certaines colonnes, comme société par « mes clients » et adresse par « localisation ».
La requête s’écrit comme ceci :
SELECT societe AS "Mes client",adresse AS "Localisation",ville
From clients
Explication :
- SELECT :Cette commande est utilisée pour récupérer des colonnes spécifiques de la table clients.
- societe AS « Mes client » :Cette partie sélectionne la colonne societe de la table clients et la renomme temporairement en »Mes client »pour l’affichage du résultat.
- adresse AS « Localisation » :Ici, la colonne adresse est sélectionnée et renommée temporairement en »Localisation »dans le résultat.
- Ville :La colonne ville est également sélectionnée mais sans être renommée.
- FROM clients :Cette commande indique la table source, ici clients, à partir de laquelle les données sont extraites.
- Résultat :
La requête renverra un tableau où les colonnes societe et adresse sont affichées sous les nouveaux noms « Mes client » et « Localisation », et la colonne ville gardera son nom d’origine.
- Traitement de la valeur NULL
Le traitement de la valeur NULL en SQL est important, car NULL représente l’absence de valeur ou une valeur inconnue. Voici comment traiter les valeurs NULL dans une requête SQL.
Lorsque vous exécutez la requête suivante sur le MSSMS :
SELECT nom, prenom, salaire, commission
FROM employes;
Voilà le résultat obtenu :
Si certaines valeurs dans la colonne commission sont NULL, elles apparaîtront comme telles dans le résultat, ce qui peut être déroutant si vous souhaitez afficher quelque chose de plus significatif à la place de NULL. Pour éviter cela, vous pouvez utiliser la fonction COALESCE ou IFNULL pour remplacer les valeurs NULL par une autre valeur, comme 0 ou un texte spécifique.
- Solution avec COALESCE
Voici un exemple qui remplace les valeurs NULL dans la colonne commission par 0 :
SELECT nom, prenom, salaire, COALESCE(commission, 0) AS commission
FROM employes;
Résultat :
Si la colonne commission contient des valeurs NULL, le résultat sera ainsi :
- Les opérations arithmétiques :
Les opérations arithmétiques en SQL permettent de manipuler et d’analyser des données numériques de manière efficace.
Dans l’exemple suivant, nous allons calculer le salaire annuel d’un employé, en tenant compte de sa commission.
- Exemple de Requête :
SELECT nom,
fonction,
salaire,
COALESCE (commission,0) AS commission,
((salaire*12) + COALESCE (commission,0)) AS "Salaire annuel et com"
FROM employes
Explication de la Requête
- Sélection des Colonnes :nom: Nom de l’employé.fonction: Poste occupé par l’employé.salaire: Salaire mensuel de l’employé.commission: Montant de la commission (peut être NULL).
- Calcul du Salaire Annuel :(Salaire * 12): Calcule le salaire annuel en multipliant le salaire mensuel par 12.COALESCE (commission, 0): Remplace la valeur NULL de la commission par 0, afin d’éviter d’obtenir NULL dans le résultat du calcul.AS « Salaire annuel et com »: Renomme le résultat du calcul en « Salaire annuel et com ».
- Résultat
Cette requête renverra une table affichant le nom, la fonction, le salaire, la commission et le salaire annuel total (salaire annuel plus commission).
- Opérateur de Concaténation en SQL
En SQL, l’opérateur de concaténation permet de combiner plusieurs chaînes de caractères pour créer une nouvelle chaîne. Cet opérateur est particulièrement utile pour formater des résultats en une seule colonne en combinant différentes données issues de la base. Selon les bases de données, l’opérateur de concaténation peut varier (par exemple, + pour SQL Server , || pour PostgreSQL , CONCAT() pour MySQL ).
- Exemple de Requête :
SELECT 'Mr ' + nom + ' ' + prenom + ' occupe la fonction de ' + fonction AS Résultat
FROM employes;
Explication de la Requête
- Concaténation des Chaînes de Caractères :’Mr ‘ + nom: Ajoute le texte « Mr » avant le nom de l’employé.prenom: Ajoute le prénom après le nom, séparé par un espace.fonction: Ajoute la fonction de l’employé à la fin de la phrase.
- Alias AS Résultat :AS Résultat: Renomme la colonne contenant la phrase concaténée comme « Résultat ».
- Résultat
Cette requête retournera une phrase descriptive pour chaque employé, combinant son nom, son prénom et sa fonction.
SELECT CONCAT('Mr ', nom, ' ', prenom, ' occupe la fonction de ', fonction) AS Résultat
FROM employes ;
Formez-vous gratuitement avec Alphorm !
Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.
FAQ
Comment utiliser l'ordre SELECT en SQL ?
Comment gérer les valeurs NULL en SQL ?
Comment utiliser DISTINCT dans une requête SQL ?
Comment renommer des colonnes avec SQL alias ?
Comment concaténer des chaînes en SQL ?
Conclusion
En maîtrisant l’ordre SELECT, vous optimisez votre capacité à interroger efficacement des bases de données SQL. Quelles autres commandes SQL aimeriez-vous explorer pour enrichir vos compétences en gestion de données?