In MDX, the where clause the WHERE clause of an MDX SELECT statement never directly filters what is returned on the Rows axis of a query. To filter what appears on the Rows or Columns axis of a query, you can use a variety of MDX functions, for example FILTER, NONEMPTY and TOPCOUNT. In this scenario, since you already have a FISCAL_YR on rows, you can't slicing on FISCAL_YR in where clause again.
You already have that in one of your many sub-select statements 'SELECT ( STRTOSET(@YearMonth, CONSTRAINED) ) ON COLUMNS'. You could simply remove that and place this parameter into your ROWS and it appears that you are going to need to remove the WHERE clause portion where you are referencing this also, not sure what that part is needed for.
mdx the hierarchy already appears in the axis1 axis
Download File: https://urluss.com/2vzv3o
As you have already seen in the MDX section, the Axis is a collection of members from one or more dimensions. The Axis object has a Positions collection, which represents a point along an axis. It is easy to visualize an axis with one dimension. However, an example of an axis with multiple dimensions is when using the CROSSJOIN() function.
2 MDX, acronyme de Multi Dimensional expression, est un langage de requêtes OLAP pour les bases de données multidimensionnelles inventé en 1997 par Mosha Pasumansky au sein de Microsoft, version commerciale Microsoft OLAP Services 7.0 & Analysis Services en1998, dernière spécification OLE DB for OLAP (ODBO) en 1999 MDX est fait pour naviguer dans les bases multidimensionnelles, et définir des requêtes sur tous leurs objets (dimensions, hiérarchies, niveaux, membres et cellules) Une requête MDX retourne un rapport à plusieurs dimensions consistant en un ou plusieurs tableaux 2D Utilisé par de nombreux outils de BI commerciaux ou non Langage très complexe et puissant générant des requêtes plus compacte que les requêtes SQL équivalentes La syntaxe de MDX ressemble à celle de SQL par ses mots clé, FROM, WHERE, mais leurs sémantiques sont différentes :! SQL construit des vues relationnelles! MDX construits des vues multidimensionnelles des données Analogies entre termes multidimensionnels (MDX) et relationnels (SQL) : Multidimensionnel (MDX) Cube Niveau (Level) Dimension Mesure (Measure) Membre de dimension (Dimension member) Table Relationnel (SQL) Colonne (chaine de caractère ou valeur numérique) plusieurs colonnes liées ou une table de dimension Colonne (discrète ou numérique) Valeur dans une colonne et une ligne particulière de la table Introduction au langage MDX pour l OLAP - Bernard ESPINASSE - 5 Introduction au langage MDX pour l OLAP - Bernard ESPINASSE - 6 Structure générale d une requête :! SQL : column1, column2,, columnn FROM table! MDX : axis1 ON COLUMNS, axis2 ON ROWS FROM cube Clause FROM spécifie la source de données :! en SQL : une ou plusieurs tables! en MDX : un cube La clause indique les résultats que l on souhaite récupérer par la requête :! en SQL :! une vue des données en 2 dimensions : lignes (rows) et colonnes (columns)! les lignes ont la même structure définie par les colonnes! en MDX :! nb quelconque de dimensions pour former les résultats de la requête! terme d axe pour éviter confusion avec les dimensions du cube! pas de signification particulière pour les rows et les columns,! mais il faut définir chaque axe : axe1 définit l axe horizontal et axe2 définit l axe vertical Introduction au langage MDX pour l OLAP - Bernard ESPINASSE - 7 Introduction au langage MDX pour l OLAP - Bernard ESPINASSE - 8
4 Origine de MDX MDX est lʼacronyme de Multi Dimensional expression est un langage de requêtes OLAP pour les bases de données multidimensionnelles 2 Introduction à MDX! Origine de MDX! MDX versus SQL a été inventé par Mosha Pasumansky au sein de Microsoft a été présenté pour la première fois en 1997 comme un volet de la spécification OLE DB for OLAP (ODBO) version commerciale Microsoft OLAP Services 7.0, Microsoft Analysis Services en1998 dernière version de la spécification OLE DB for OLAP (ODBO) en 1999 MDX peut être présenté comme une extension de SQL : structures de requêtes et mots clés similaires, mais avec de grandes différences. Bibliographie et sources du cours :! MDX for Everyone, M. Pasumansky, avril 1998.! Fast track to MDX, M. Whithehorn, R. Zare, M. Pasumansky, Springer, 2006.! Introduction to Multidimensionnal Expressions (MDX), auteur inconnu.! Cours de Kamel Aouiche, ERIC, Université de Lyon 2, 2004! Cours de Joseph Fong, City University of Hong Kong, 2008 Introduction au langage MDX pour lʼolap - Bernard ESPINASSE - 13 Introduction au langage MDX pour lʼolap - Bernard ESPINASSE - 14 MDX versus SQL (1) MDX est fait pour naviguer dans les bases multidimensionnelles et pour définir des requêtes sur tous leurs objets (dimensions, hiérarchies, niveaux, membres et cellules) afin d'obtenir (simplement) une représentation sous forme de tableaux croisés MDX ressemble à SQL par ses mots clé, FROM, WHERE, mais :! SQL construit des vues relationnelles! MDX construits des vues multidimensionnelles des données Analogies entre termes multidimensionnels (MDX) et relationnels (SQL) : Multidimensionnel (MDX) Cube Niveau (Level) Dimension Mesure (Measure) Membre de dimension (Dimension member) Table Relationnel (SQL) Colonne (chaine de caractère ou valeur numérique) plusieurs colonnes liées ou une table de dimension Colonne (discrète ou numérique) Valeur dans une colonne et une ligne particulière de la table MDX versus SQL (2) Structure générale dʼune requête SQL : column1, column2,, columnn FROM table Structure générale dʼune requête MDX : axis1 axis2 FROM cube FROM spécifie la source de données :! en SQL : une ou plusieurs tables! en MDX : un cube indique les résultats que lʼon souhaite récupérer par la requête :! en SQL : une vue des données en 2 dimensions (lignes (rows) et colonnes (columns)) les lignes ont la même structure définie par les colonnes! en MDX : nb quelconque de dimensions pour former les résultats de la requête. terme dʼaxe pour éviter confusion avec les dimensions du cube. pas de signification particulière pour les rows et les columns, mais il faut définir chaque axe : axe1 définit lʼaxe horizontal et axe2 définit lʼaxe vertical Introduction au langage MDX pour lʼolap - Bernard ESPINASSE - 15 Introduction au langage MDX pour lʼolap - Bernard ESPINASSE - 16 2ff7e9595c
Comments