【发布时间】:2020-04-07 07:33:42
【问题描述】:
我不知道如何防止每个产品显示多行。
这是我的代码:
-- For each product find the city where it is offered at the lowest price
WITH MEMBER [Measures].[MIN Price] AS MIN([Measures].[Price])
SELECT NON EMPTY {
[Measures].[MIN Price] } ON COLUMNS,
NON EMPTY {
([Tb Product].[Name].[Name].ALLMEMBERS * [Tb Supplier].[City].[City].ALLMEMBERS ) } ON ROWS
FROM [DS715]
这是结果的屏幕截图。
我不想让每个城市都出现,只显示价格最低的城市
我希望查询返回:
Boat Wausau 3013.17
Computer Springfield 450.89
Gas Wausau 2.28
Milk Madison 3.88
Orange Wausau 1.89
TV Wausau 189.99
编辑:尝试使用以下代码的顺序和排名,但现在每个产品名称都显示一个巨大的数字
代码:
WITH MEMBER [Measures].[Max Price RANK] AS
RANK( ([Tb Product].[Name].currentmember),
ORDER( ([Tb Product].[Name].currentmember), [Measures].[Price - Tb Transactions], BDESC) )
SELECT
NON EMPTY {
[Measures].[Price - Tb Transactions] } ON COLUMNS,
NON EMPTY {
filter([Tb Product].[Name].[Name], [Measures].[Max Price RANK] <2 )} ON ROWS
FROM [DS715]
WHERE ( [Tb Supplier].[City].&[Madison] )
【问题讨论】:
-
看来您需要找到一种方法将
distinct关键字放入查询中。 -
@robbpriestley 这不是 SQL。 MDX 的工作方式不同
-
我想知道它是否应该被标记为 sql-server 呢?
标签: sql sql-server ssas mdx min