Intersect (MDX)
Restituisce l'intersezione di due set di input, mantenendo facoltativamente i duplicati.
Sintassi
Intersect(Set_Expression1 , Set_Expression2 [ , ALL ] )
Argomenti
Set_Expression1
Espressione MDX (Multidimensional Expression) valida che restituisce un set.Set_Expression2
Espressione MDX (Multidimensional Expression) valida che restituisce un set.
Osservazioni
La funzione Intersect restituisce l'intersezione di due set. Per impostazione predefinita la funzione rimuove i duplicati da entrambi i set prima di eseguire l'intersezione. I due set specificati devono disporre della stessa dimensionalità.
Il flag ALL facoltativo consente di mantenere i duplicati. Se si specifica il flag ALL, la funzione Intersect eseguirà come di consueto l'intersezione degli elementi non duplicati, oltre che di ogni elemento duplicato del primo set a cui corrisponde un elemento duplicato nel secondo set.
Esempio
Per la seguente query vengono restituiti gli anni 2003 e 2004, i due membri visualizzati in entrambi i set specificati:
SELECT
INTERSECT(
{[Date].[Calendar Year].&[2001], [Date].[Calendar Year].&[2002],[Date].[Calendar Year].&[2003]}
, {[Date].[Calendar Year].&[2002],[Date].[Calendar Year].&[2003], [Date].[Calendar Year].&[2004]})
ON 0
FROM
[Adventure Works]
La query seguente non viene eseguita correttamente perché i due set specificati contengono membri da gerarchie diverse:
SELECT
INTERSECT(
{[Date].[Calendar Year].&[2001]}
, {[Customer].[City].&[Abingdon]&[ENG]})
ON 0
FROM
[Adventure Works]