Powerbi 选择每类功率BI/DAX最大值的行
如何在DAX/SSAS中选择每个类别具有最大值的行?假设我们有一张桌子: +----------+-------+------------+ |类别|价值|日期| +----------+-------+------------+ |苹果| 1 | 2018-07-01| |苹果| 2 | 2018-07-02| |苹果| 3 | 2018-07-03| |香蕉| 7 | 2018-07-04| |香蕉| 8 | 2018-07-05| |香蕉| 9 | 2018-07-06| +----------+-------+------------+ 预期的结果是: +----------+-------+------------+ |类别|价值|日期| +----------+-------+------------+ |苹果| 3 | 2018-07-03| |香蕉| 9 | 2018-07-06|Powerbi 选择每类功率BI/DAX最大值的行,powerbi,ssas,dax,Powerbi,Ssas,Dax,如何在DAX/SSAS中选择每个类别具有最大值的行?假设我们有一张桌子: +----------+-------+------------+ |类别|价值|日期| +----------+-------+------------+ |苹果| 1 | 2018-07-01| |苹果| 2 | 2018-07-02| |苹果| 3 | 2018-07-03| |香蕉| 7 | 2018-07-04| |香蕉| 8 | 2018-07-05| |香蕉| 9 | 2018-07-06| +-------
+----------+-------+------------+根据您的问题,您不清楚是要返回表格还是度量值 如果需要返回表,请执行以下操作:
calculated_table
:=VAR _categoryfirst=
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
)
RETURN
CALCULATETABLE(
SELECTCOLUMNS('Table',
"Category", 'Table'[Category]
"Value", 'Table'[Value]
"Date", 'Table'[Date]
),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table'[Category],
'Table'[Value]
)
)
)
measure:=
VAR _categoryfirst=
CALCULATETABLE(
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
),
ALL('Table'[Value]),
ALL('Table'[Date])
)
RETURN
CALCULATE(
MIN('Table'[Value]),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table1'[Category],
'Table1'[Value]
)
)
)
相反,如果要创建一个具有类别、值、日期的表可视化,仅显示与最小值关联的行,我将使用以下命令:
calculated_table
:=VAR _categoryfirst=
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
)
RETURN
CALCULATETABLE(
SELECTCOLUMNS('Table',
"Category", 'Table'[Category]
"Value", 'Table'[Value]
"Date", 'Table'[Date]
),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table'[Category],
'Table'[Value]
)
)
)
measure:=
VAR _categoryfirst=
CALCULATETABLE(
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
),
ALL('Table'[Value]),
ALL('Table'[Date])
)
RETURN
CALCULATE(
MIN('Table'[Value]),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table1'[Category],
'Table1'[Value]
)
)
)
从您的问题来看,不清楚您是要返回一个表还是一个度量值 如果需要返回表,请执行以下操作:
calculated_table
:=VAR _categoryfirst=
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
)
RETURN
CALCULATETABLE(
SELECTCOLUMNS('Table',
"Category", 'Table'[Category]
"Value", 'Table'[Value]
"Date", 'Table'[Date]
),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table'[Category],
'Table'[Value]
)
)
)
measure:=
VAR _categoryfirst=
CALCULATETABLE(
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
),
ALL('Table'[Value]),
ALL('Table'[Date])
)
RETURN
CALCULATE(
MIN('Table'[Value]),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table1'[Category],
'Table1'[Value]
)
)
)
相反,如果要创建一个具有类别、值、日期的表可视化,仅显示与最小值关联的行,我将使用以下命令:
calculated_table
:=VAR _categoryfirst=
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
)
RETURN
CALCULATETABLE(
SELECTCOLUMNS('Table',
"Category", 'Table'[Category]
"Value", 'Table'[Value]
"Date", 'Table'[Date]
),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table'[Category],
'Table'[Value]
)
)
)
measure:=
VAR _categoryfirst=
CALCULATETABLE(
ADDCOLUMNS (
VALUES ( 'Table'[Category] ),
"MinValue", CALCULATE (MIN ( 'Table'[Value] ),ALL ( 'Table'[Value] ))
),
ALL('Table'[Value]),
ALL('Table'[Date])
)
RETURN
CALCULATE(
MIN('Table'[Value]),
KEEPFILTERS (
TREATAS (
_categoryfirst,
'Table1'[Category],
'Table1'[Value]
)
)
)
我需要一张桌子。每个类别(苹果、香蕉……)的最后日期行。如:香蕉2018-07-06和此行的其他列。您的第一个解决方案是“最小”和“值”。这不适合约会,我需要一张桌子。每个类别(苹果、香蕉……)的最后日期行。如:香蕉2018-07-06和此行的其他列。您的第一个解决方案是“最小”和“值”。它与日期无关。