Dans le monde des données, SQL (Structured Query Language) est le langage universel pour communiquer avec les bases de données. Pour tout analyste de données en herbe, maîtriser SQL n'est pas une option, mais une nécessité. Face à la multitude de commandes et de fonctions, par où commencer ? Ce guide vous permet de vous concentrer sur les commandes SQL essentielles que vous utiliserez au quotidien. Leur compréhension est une compétence fondamentale, présentée dans notre Guide ultime pour devenir analyste de données en autodidacte (2025). Nous aborderons tous les aspects, de l'extraction de données aux agrégations complexes, afin de vous fournir les outils pratiques indispensables à votre réussite.
Les Fondements : Commandes de base pour la récupération des données
Toute requête SQL commence ici. Ces commandes constituent les éléments de base pour extraire les données exactes dont vous avez besoin d'une base de données.
SELECT et FROM
L'instruction SELECT permet de sélectionner les colonnes à afficher, et FROM spécifie la table où se trouvent ces colonnes. Pour sélectionner toutes les colonnes, utilisez un astérisque (*).
-
SELECT colonne1, colonne2 FROM nom_table;- Récupère des colonnes spécifiques. -
SELECT * FROM nom_table;- Récupère toutes les colonnes de la table.
WHERE
La clause WHERE permet de filtrer les enregistrements et d'extraire uniquement ceux qui répondent à une condition spécifique. Vous pouvez utiliser des opérateurs de comparaison comme =, >, <, >=, <=, et des opérateurs logiques comme AND, OR et NOT.
-
SELECT * FROM customers WHERE country = 'USA'; -
SELECT product_name, price FROM products WHERE price > 50 AND category = 'Electronics';
Organiser sa production : trier et limiter
Une fois vos données récupérées, l'étape suivante consiste à les organiser de manière pertinente. Les données brutes sont rarement utiles ; les résultats structurés sont essentiels.
TRIER PAR
Le mot-clé ORDER BY trie les résultats par ordre croissant ou décroissant. Par défaut, le tri est effectué par ordre croissant (ASC). Pour trier par ordre décroissant, utilisez le mot-clé DESC.
SELECT customer_name, signup_date FROM customers ORDER BY signup_date DESC;
LIMITER
Lorsque vous travaillez avec de grandes tables, vous n'avez souvent pas besoin d'afficher la totalité des millions de lignes simultanément. La clause LIMIT spécifie le nombre maximal d'enregistrements à retourner, ce qui est très pratique pour prévisualiser les données ou identifier les produits les plus performants.
SELECT product_name, sales FROM products ORDER BY sales DESC LIMIT 10;- Cette requête trouve les 10 produits les plus vendus.
L'agrégation des données : le superpouvoir de l'analyste
L'agrégation est au cœur de l'analyse des données. Ces fonctions effectuent un calcul sur un ensemble de valeurs et renvoient une valeur unique, servant de synthèse. C'est ainsi que l'on transforme des données brutes en informations précieuses.
Fonctions d'agrégation courantes
-
COUNT() : Compte le nombre de lignes.
-
SUM() : Calcule la somme d'une colonne numérique.
-
AVG() : Calcule la moyenne d'une colonne numérique.
-
MIN() / MAX() : Renvoie la valeur minimale ou maximale d'une colonne.
GROUP BY
L'instruction GROUP BY regroupe les lignes ayant les mêmes valeurs dans les colonnes spécifiées en lignes de synthèse. Elle est presque toujours utilisée avec les fonctions d'agrégation pour effectuer des calculs sur chaque groupe.
SELECT category, COUNT(*) FROM products GROUP BY category;- Cette requête compte le nombre de produits dans chaque catégorie.
HAVING
La clause HAVING a été ajoutée à SQL car le mot-clé WHERE ne peut pas être utilisé avec les fonctions d'agrégation. HAVING filtre les résultats d'une requête GROUP BY.
SELECT country, AVG(order_value) FROM orders GROUP BY country HAVING AVG(order_value) > 1000;
Relier les points : Jonction de plusieurs tableaux
Les données sont rarement stockées dans une seule table volumineuse. Elles sont généralement réparties sur plusieurs tables liées. Les jointures (JOIN) permettent de combiner les lignes de deux tables ou plus en fonction d'une colonne commune.
INNER JOIN
Renvoie les enregistrements ayant des valeurs correspondantes dans les deux tables. C'est le type de jointure le plus courant.
SELECT orders.order_id, customers.customer_name FROM orders INNER JOIN customers ON orders.customer_id = customers.customer_id;
LEFT JOIN
Renvoie tous les enregistrements de la table de gauche (la première mentionnée) et les enregistrements correspondants de la table de droite. En l'absence de correspondance, le résultat est NULL.
SELECT customers.customer_name, orders.order_id FROM customers LEFT JOIN orders ON customers.customer_id = orders.customer_id;- Cette requête afficherait tous les clients, même ceux n'ayant pas passé de commande.
Comprendre les JOINs est crucial pour créer des ensembles de données complets destinés à l'analyse.
Outils avancés : sous-requêtes et instructions CASE
Une fois les bases maîtrisées, ces commandes ajoutent une dimension supplémentaire à vos requêtes.
Sous-requêtes (Requêtes imbriquées)
Une sous-requête est une requête SQL imbriquée dans une requête plus large. Elle permet d'effectuer des opérations en plusieurs étapes en une seule commande.
SELECT customer_name FROM customers WHERE customer_id IN (SELECT customer_id FROM orders WHERE order_date = '2024-10-26');
Instruction CASE
L'instruction CASE parcourt des conditions et renvoie une valeur lorsque la première condition est remplie (comme une instruction if-then-else). Elle est extrêmement utile pour créer rapidement de nouvelles catégories ou étiquettes dans vos données.
SELECT order_id, quantity, CASE WHEN quantity > 10 THEN 'Grande commande' WHEN quantity > 5 THEN 'Commande moyenne' ELSE 'Petite commande' END AS order_size FROM order_details;
La maîtrise des commandes SQL essentielles — SELECT, WHERE, ORDER BY, les fonctions d'agrégation avec GROUP BY et les jointures JOIN — vous permettra de réaliser la grande majorité des tâches d'analyse de données. Entraînez-vous régulièrement, comprenez comment elles s'articulent et vous construirez des bases solides pour une carrière réussie. Maintenant que vous maîtrisez ces commandes, intégrez-les à votre parcours d'apprentissage grâce à notre guide complet La feuille de route ultime pour devenir analyste de données en autodidacte (Guide 2025) pour un plan d'apprentissage étape par étape.
