MultiDimensional eXpressions è un linguaggio informatico usato nelle interrogazioni di tipo OLAP - On-Line Analytical Processing per scorrere dimensionalmente il Cubo OLAP del Data Mart in un Data Warehouse.
Sintatticamente somiglia al linguaggio SQL(linguaggio adottato per le interrogazioni in database relazionali), ma ha una semantica diversa. In alcuni aspetti risulta essere verboso e ridondante, tuttavia è possibile omettere nelle espressioni regolari alcune parti significative, la cui interpretazione è basata su regole di default.
MDX non è un linguaggio di interrogazione in senso stretto: permette di calcolare, a partire da un cubo, un dataset che ha una struttura simile a un cubo.
Dimensioni e attributi dimensionali si chiamano livelli. I valori delle dimensioni e degli attributi dimensionali si dicono membri (per denotare un membro le [ ] sono facoltative).
[STORE].[ALL].[Italia].[EmiliaRomagna].[RE] : percorso completo
[STORE].[RE] : Se il membro "RE" è univoco nella dimensione STORE
[CITY].[RE] : Se il livello CITY è univoco in tutte le dimensioni del cubo
Una tupla è una ennupla di membri denotati tra parentesi ( ), la cui tupla è costituita da un membro per cui la sua dimensione individua un evento primario (in altri termini è una tupla corrispondente al pattern primario).
([data].[05/05/2015], [prodotto].[brilli], [store][DiCasa])
Un evento secondario è individuato da una tupla corrispondente a un pattern secondario (nell'esempio sottostante corrispondente al pattern: {Data, Prodotto}):
([data].[05/05/2015], [prodotto].[brilli])
L'esempio corrente mostra l'uso dell'istruzione SELECT. Questa query ritorna il risultato contenuto tra gli importi del membro "Vendite Negozio" contenuti nel 2002 e 2003 nello stato della California.
SELECT
{ [Measures].[Vendite Negozio] } ON COLUMNS,
{ [Data].[2002], [Data].[2003] } ON ROWS
FROM Vendite
WHERE ( [Store].[USA].[CA] )
Controllo di autorità | LCCN (EN) sh2002008553 · J9U (EN, HE) 987007558928105171 |
---|