MAQL et multidimensionnalité
La multidimensionnalité est un principe fondamental de MAQL, le langage de GoodData.
La modélisation multidimensionnelle fonctionne avec les concepts de faits et dimensions, c’est-à-dire que les métriques MAQL sont sensibles au contexte. Les métriques sont découpées selon le contexte actuel de filtres et dimensions, qui n’ont pas besoin d’être spécifiés dans les expressions MAQL. Cette capacité multidimensionnelle est une des fonctionnalité qui différencie MAQL de SQL.
Exemples de multidimensionnalité
Dans cette section, nous utiliserons plusieurs exemples pour vous présenter la façon dont MAQL fonctionne de manière multidimensionnelle.
Exemple 1
Dans cet exemple, nous créons une métrique SUM pour afficher le montant vendu (Amount Sold) d’un produit particulier.
SELECT SUM(quantity)
Vous pouvez appliquer des dimensions supplémentaires (dans ce cas Product (produit) et Year(année)) à cette métrique simple pour la ventiler :
Métrique | Dimensionnalité | Ce qui est renvoyé (signification commerciale) |
---|---|---|
Amount Sold | (vide) | total de ventes toutes périodes (1 ligne) |
Amount Sold | Product | ventes toutes périodes de chaque produit vendu |
Amount Sold | Product, Year | nombre d'unités de chaque produit vendues chaque année |
Modifier les filtres, la dimensionnalité et l’imbrication entraîne une modification du renvoi.
Exemple 2
SELECT SUM(quantity) WHERE SUM(quantity) > 25
Le résultat et le filtre ont la même dimensionnalité, définie par la dimensionnalité du rapport.
Métrique | Dimensionnalité | Ce qui est renvoyé (signification commerciale) |
---|---|---|
Amount Sold 25+ | (vide) | Ventes totales de tous les éléments, toutes périodes (si le total est >25) |
Amount Sold 25+ | Product | Ventes de chaque produit si les ventes de ce produit sont >25 |
Amount Sold 25+ | Product, Year | Ventes de chaque produit, chaque année, si au moins 25 unités de ce produit ont été vendues cette année-là |
Le filtre est différent pour chaque dimensionnalité de rapport.
Exemple 3
SELECT SUM(quantity) WHERE (SELECT SUM(quantity) BY Product ALL OTHER) > 25
La dimensionnalité de la métrique de résultat (externe) est différente de celle de la métrique interne. La métrique interne (de filtre) est verrouillée au produit.
Métrique | Dimensionnalité | Ce qui est renvoyé (signification commerciale) |
---|---|---|
Amount Sold 25+ | (vide) | Ventes totales de produits ayant eu plus de 25 unités vendues |
Amount Sold 25+ | Product | Ventes de chaque produit si ces ventes sont >25 |
Amount Sold 25+ | Product, Year | Ventes de chaque produit dont les ventes totales sont >25, par année |