Indicateur
Chiffre d'affaires
Une seule définition pour tout le torréfacteur :
quantity * unit_price des lignes de commande, commandes annulées exclues.SELECT SUM(l.quantity * l.unit_price) AS revenue
FROM orders o
JOIN order_lines l ON l.order_id = o.order_id
WHERE o.status <> 'cancelled'
C'est le chiffre d'affaires commandé : les commandes en attente et payées comptent, les annulées non.
L'argent encaissé est une autre métrique, lue dans payments. Toutes les étapes qui parlent de chiffre
d'affaires utilisent cette définition. Quand deux rapports ne s'accordent pas, comparez leurs définitions avant
leur SQL. Écrivez une métrique une seule fois, à un seul endroit (une vue, un modèle dbt, une couche
sémantique), et réutilisez-la.
SELECT EXTRACT(YEAR FROM o.ordered_at) AS year,
SUM(l.quantity * l.unit_price) AS revenue
FROM orders o
JOIN order_lines l ON l.order_id = o.order_id
WHERE o.status <> 'cancelled'
GROUP BY 1
ORDER BY 1;
| year | revenue |
|---|---|
| 2024 | 81511.00 |
| 2025 | 78934.40 |