這里的多維數(shù)據(jù)集是foodmart的Warehouse and Sales。
查詢銷售量的2個(gè)品牌及其下銷量最低的商品
這個(gè)問(wèn)題我使用下面語(yǔ)句:
select {[Unit Sales]} on COLUMNS,
Generate(
COUNT([Product].[Products].[Brand].members, 2, [Unit Sales]),
{[Product].[Products].CurrentMember}*
BottomCount([Product].[Products].[Product].members, 1, ([Unit Sales],[Product].[Products].CurrentMember))
)on ROWS
from [Warehouse and Sales]
但是報(bào)錯(cuò)說(shuō)Products層次結(jié)構(gòu)在crossjoin函數(shù)中調(diào)用多次,不明白為什么?如果不能這樣做,而Product維度又只有一個(gè)層次結(jié)構(gòu),那么應(yīng)該這樣才能得到結(jié)果呢?
我的第一個(gè)回答
>>Products層次結(jié)構(gòu)在crossjoin函數(shù)中調(diào)用多次
錯(cuò)誤說(shuō)明已經(jīng)很明白了,msdn的例子是兩個(gè)不同緯度(層次結(jié)構(gòu)上的),同一層次結(jié)構(gòu)只要用CurrentMember.Children就可以了何必再交叉呢
反饋
mdx寫成這樣:
select {[Unit Sales]} on COLUMNS,
Generate(
COUNT([Product].[Products].[Brand].members, 2, [Unit Sales]),
BottomCount([Product].[Products].CurrentMember.Children, 1, ([Unit Sales],[Product].[Products].CurrentMember))
)on ROWS
from [Warehouse and Sales]
每行前面就沒(méi)有商品品牌了。
我的第二個(gè)回答
層次結(jié)構(gòu)不能多次出現(xiàn),但是維度可以多次出現(xiàn),把你要的品牌在前面再交叉一次吧:p
但是不能用層次結(jié)構(gòu),我不知道原始緯度是什么,比如是[Products].[Brand]
rows這里改為
{COUNT([Products].[Brand].children,2, [Unit Sales])}*{Generate(...)} on rows
反饋
查詢銷售量的2個(gè)品牌及其下銷量最低的商品
這個(gè)問(wèn)題我使用下面語(yǔ)句:
select {[Unit Sales]} on COLUMNS,
Generate(
COUNT([Product].[Products].[Brand].members, 2, [Unit Sales]),
{[Product].[Products].CurrentMember}*
BottomCount([Product].[Products].[Product].members, 1, ([Unit Sales],[Product].[Products].CurrentMember))
)on ROWS
from [Warehouse and Sales]
但是報(bào)錯(cuò)說(shuō)Products層次結(jié)構(gòu)在crossjoin函數(shù)中調(diào)用多次,不明白為什么?如果不能這樣做,而Product維度又只有一個(gè)層次結(jié)構(gòu),那么應(yīng)該這樣才能得到結(jié)果呢?
我的第一個(gè)回答
>>Products層次結(jié)構(gòu)在crossjoin函數(shù)中調(diào)用多次
錯(cuò)誤說(shuō)明已經(jīng)很明白了,msdn的例子是兩個(gè)不同緯度(層次結(jié)構(gòu)上的),同一層次結(jié)構(gòu)只要用CurrentMember.Children就可以了何必再交叉呢
反饋
mdx寫成這樣:
select {[Unit Sales]} on COLUMNS,
Generate(
COUNT([Product].[Products].[Brand].members, 2, [Unit Sales]),
BottomCount([Product].[Products].CurrentMember.Children, 1, ([Unit Sales],[Product].[Products].CurrentMember))
)on ROWS
from [Warehouse and Sales]
每行前面就沒(méi)有商品品牌了。
我的第二個(gè)回答
層次結(jié)構(gòu)不能多次出現(xiàn),但是維度可以多次出現(xiàn),把你要的品牌在前面再交叉一次吧:p
但是不能用層次結(jié)構(gòu),我不知道原始緯度是什么,比如是[Products].[Brand]
rows這里改為
{COUNT([Products].[Brand].children,2, [Unit Sales])}*{Generate(...)} on rows
反饋