Qual è la differenza tra tuple
e set
in MDX. Come possiamo distinguere entrambi e quando li stiamo usando.Differenza tra tuple e set in mdx
risposta
Una tupla è un membro di gerarchia singolo preso da tutte le dimensioni. Supponiamo che Time.[2nd half]
sia una tupla di dimensione temporale. Allo stesso modo possiamo avere più tuple e le rappresentiamo nelle parentesi '(', ')'. Ad esempio:
(Time.[2nd half], Color.Dark.Red).
Questo non è altro che l'intersezione matematica dei nodi. possiamo rappresentare i nodi in matematica come (2,1) nello stesso modo sopra l'espressione funzionerà.
Ora che arriva alle scene non è altro che la composizione delle tuple. set contiene una o più tuple può anche zero. li rappresentiamo in {,} parentesi graffe. Ad esempio:
{ (Time.[1st half], Color.Dark.Red), (Time.[2nd half], Color.Dark.Blue) }
Che cos'è la logica dietro, & * La sua confusione per me. – Aditya
This article descrive i termini Stati, Tuple e Situato nei dettagli.
Proverò a spiegarlo in modo semplice.
poche parole, un tupla è una fetta atomico di dati in una dimensione e una set è una collezione di tuple. Ad esempio, è possibile avere una dimensione Books
con tuple Sherlock Holmes
, Tom Sawyer
, CLR via C#
, Code Complete
e Quantum Physics for Dummies
.
Successivamente, è possibile organizzare queste tuple in insiemi denominati, ad esempio Programming
, Fiction
e Natural Sciences
.
[Books].&[Sherlock Holmes] -- Tuple
[Books].&[CLR via C#] -- Tuple
{ [Books].&[CLR via C#], [Books].&[Code Complete] } -- Set
Ci sono alcuni functions in MDX che restituiscono insiemi o tuple, ed è spesso utile sapere come convertire una tupla per un set e viceversa. Ad esempio, la funzione Item(...)
accetta una tupla specifica da un set. Includendo più tuple in { , , }
verrà creato un set con queste tuple.
L'esempio che ho descritto è piuttosto parziale e non copre l'intera teoria, ma potrebbe fornire una buona conoscenza di base di come funzionano questi concetti.
dicendo che '[Libri]. & [Sherlock Holmes]' è una tupla leggermente fuorviante in quanto ignora il fatto che tutte le altre dimensioni richiedono una coordinata allo stesso tempo. Inoltre l'uso di '()' è importante in 'MDX' quando si spiegano le tuple. – whytheq
essere venuto a MDX da una prospettiva più di matematica questo è il mio introito sulla questione:
Immaginate di avere 3d cubo con dimensioni X, Y e Z. Il numero di celle nel cubo è il numero di membri in X moltiplicati per il numero di membri di Y moltiplicati per il numero di membri di Z.
Ogni cella con una coordinata nel cubo basata su un valore da X, Y e Z. Quella coordinata è una tupla.
Allora supponiamo:
- X è Misure,
- Y è anni,
- Z è Prodotti,
Poi una singola cellula potrebbe essere le vendite di laptop per il 1999. Le coordinate di cella saranno: logicamente e fisicamente (X, Y, Z)
questa è una tupla come
(Measures.Sales, Years.[1999], Products.[Laptop])
Ora consente di dire che vogliamo più celle, allora abbiamo bisogno di più tuple, giusto? Sì, un Set è fondamentalmente più tuple. In realtà da più includo 0 e 1. Quindi estendere il nostro esempio, potremmo avere i computer portatili a partire dal 1999 e desktop dal 2001:
{
(Measures.Sales, Years.[1999], Products.[Laptop]) ,
(Measures.Sales, Years.[2001], Products.[Desktop])
}
Così si può vedere che si finisce con più elementi con un set, e un singolo articolo con una tupla ......
Ecco un'altra buona spiegazione da: http://www.onlineexpert.com/elearning/user/pdf/APPLICATIONDEVELOPMENT/SQL2KOLAP/Ch08.pdf.
È simile alla risposta di Preet Sangha.
MSDN: [membri, tuple e insiemi] (http://msdn.microsoft.com/en-us/library/aa216769 (v = sql.80) .aspx) –
@guts .. puoi spiegarmi in un modo semplice ..? – Searcher