AI Engineering Tools

Analyse de données

Termes SQL et d’analyse de bases de données

Apprenez les structures relationnelles, les clés, le filtrage, les jointures, le regroupement, l'agrégation, les CTE et les fonctions de fenêtre utilisés dans SQL analytique.

12 termes

Modèle relationnel

Tableau

Table

Sens

Une relation organisée en lignes et en colonnes nommées.

Quand l’utiliser

Utilisez des tableaux pour stocker des entités, des événements, des données de référence et des résultats analytiques.

Exemple

analytics.orders(order_id, customer_id, amount, ordered_at)

Modèle relationnel

Ligne et colonne

Row and column

Sens

Une ligne représente un enregistrement, tandis qu'une colonne représente un attribut avec un type défini.

Quand l’utiliser

Vérifiez la granularité de chaque ligne et la signification de chaque colonne avant d'interroger.

Exemple

One row = one order; amount = gross order value.

Modèle relationnel

Clé primaire

Primary key

Sens

Une colonne ou un ensemble de colonnes qui identifie de manière unique chaque ligne de la table.

Quand l’utiliser

Utilisez-le pour imposer l'unicité et connecter les enregistrements associés de manière fiable.

Exemple

PRIMARY KEY (order_id)

Modèle relationnel

Clé étrangère

Foreign key

Sens

Une colonne ou un ensemble de colonnes qui fait référence à une clé dans une autre table.

Quand l’utiliser

Utilisez-le pour représenter les relations et protéger l'intégrité référentielle.

Exemple

orders.customer_id REFERENCES customers.customer_id

Requêtes.

SELECT

SELECT

Sens

Une instruction SQL qui récupère des colonnes ou des expressions calculées à partir d'une source de données.

Quand l’utiliser

Lister uniquement les colonnes nécessaires pour rendre l'intention analytique claire.

Exemple

SELECT order_id, amount FROM orders;

Requêtes.

WHERE

WHERE

Sens

Une clause qui filtre les lignes d'entrée avant le regroupement et l'agrégation.

Quand l’utiliser

Utilisez-le pour les conditions de date, de statut, de région ou de qualité au niveau des lignes.

Exemple

WHERE ordered_at >= DATE '2026-01-01'

Requêtes.

JOIN

JOIN

Sens

Une opération qui combine des lignes de plusieurs tables en utilisant une condition de correspondance.

Quand l’utiliser

Choisissez les jointures internes ou externes en fonction de la nécessité de conserver les lignes non appariées.

Attention

Vérifier l'unicité des clés avant de les joindre pour éviter une multiplication involontaire des lignes.

Exemple

FROM orders o LEFT JOIN customers c ON c.customer_id = o.customer_id

Agrégation

GROUP BY

GROUP BY

Sens

Une clause qui combine les lignes partageant des valeurs sélectionnées en groupes pour l'agrégation.

Quand l’utiliser

Utilisez-le pour résumer les données par date, produit, région ou autre dimension.

Exemple

GROUP BY order_date, region

Agrégation

Fonction d'agrégation

Aggregate function

Sens

Une fonction qui produit une valeur récapitulative à partir de plusieurs lignes d'entrée.

Quand l’utiliser

Utilisez COUNT, SUM, AVG, MIN et MAX en fonction de la définition de la métrique.

Exemple

SELECT region, SUM(amount) AS revenue FROM orders GROUP BY region;

Agrégation

HAVING

HAVING

Sens

Une clause qui filtre les groupes après que l'agrégation a été calculée.

Quand l’utiliser

Utilisez-le pour les conditions basées sur les résultats agrégés plutôt que sur les lignes sources.

Exemple

HAVING COUNT(*) >= 100

Analyse avancée

Expression de table courante CTE

Common table expression (CTE)

Sens

Une requête temporaire nommée introduite avec WITH, à utiliser dans une instruction plus large.

Quand l’utiliser

Utilisez-le pour organiser les transformations en plusieurs étapes et améliorer la lisibilité.

Exemple

WITH monthly_sales AS (...) SELECT * FROM monthly_sales;

Analyse avancée

Fonction fenêtre

Window function

Sens

Une fonction qui calcule les valeurs sur les lignes connexes tout en préservant les lignes de résultats individuelles.

Quand l’utiliser

Utilisez-le pour les classements, les totaux cumulés, les moyennes mobiles et les comparaisons avec la période précédente.

Exemple

SUM(amount) OVER (PARTITION BY customer_id ORDER BY ordered_at)