1

i have this query, i need to implement for two dimension

WITH
SET [TCat] AS
TopCount([Product].[Subcategory].[Subcategory],10,[Measures].[Sales Amount])
MEMBER [Product].[Subcategory].[Other] AS
Aggregate([Product].[Subcategory].[Subcategory] - TCat)

SELECT { [Measures].[Sales Amount] } ON COLUMNS,
TCat + [Other] ON ROWS
FROM [Adventure Works]

I try but it is not working for two dimension

WITH 
SET FIPS as
  [Geography].[State-Province].[State-Province]
//TopCount([Product].[Subcategory].[Subcategory],10,[Measures].[Sales Amount])
SET [TCat] AS 
  Generate( {FIPS}, CrossJoin( {[Geography].[State-Province].CurrentMember}, topsum( ([Product].[Subcategory].[Subcategory]), 2, [Measures].[Sales Amount] ) ))   
MEMBER [Product].[Subcategory].[Other] AS 
  Aggregate(Except( [Product].[Subcategory].[Subcategory].Members, TCat))
SELECT 
  { [Measures].[Sales Amount] } ON COLUMNS, 
  Union( 
     TCat , {[Geography].[State-Province].[State-Province],[Product].[Subcategory].[Other]} ) ON ROWS 
FROM [Adventure Works];
whytheq
  • 34,466
  • 65
  • 172
  • 267
user3843858
  • 321
  • 1
  • 5
  • 21

1 Answers1

0

Try using Except.

WITH
SET [TCat] AS
TopCount([Product].[Subcategory].[Subcategory],10,[Measures].[Sales Amount])
MEMBER [Product].[Subcategory].[Other] AS
Aggregate(Except( [Product].[Subcategory].[Subcategory].Members, TCat)

SELECT { [Measures].[Sales Amount] } ON COLUMNS,
Union( TCat , {[Product].[Subcategory].[Other]} ) ON ROWS
FROM [Adventure Works]
nsousa
  • 4,448
  • 1
  • 10
  • 15