在汇总中处理多个空行
Handle multiple empty rows in summariz
新建table=
总结(
'Upgrade','Upgrade'[客户],
'Upgrade'[开始日期],
'Upgrade'[完成日期],
)
我有一个自定义列“天数”来计算开始日期和完成日期之间的天数。
问题是开始日期和完成日期中的某些行没有日期。
问题 1:如果两列(开始日期、完成日期)中都没有日期,我希望在计算的“天数”列中有一个 0。
问题2:是否可以在summarize中设置条件将空值替换为0,例如if(isblank(start date) show zero.
我尝试使用 IF 语句,但没有用。
样本Table
这将消除所有 start date=BLANK
和 completion date=BLANK
tbl =
SUMMARIZE (
FILTER (
'Upgrade',
ISBLANK ( 'Upgrade'[start date] ) = FALSE ()
&& ISBLANK ( 'Upgrade'[completion date] ) = FALSE ()
),
'Upgrade'[Client],
'Upgrade'[start date],
'Upgrade'[completion date]
)
出于好奇,您为什么要使用 SUMMARIZE()
函数 return 一个 table?对于初学者,出于性能原因,建议改用 SUMMARIZECOLUMNS()
。但是,您不能通过创建一个计算列来完成 Total Days 列条件吗?
Total Days =
VAR BlankDates = ISBLANK( Upgrade[Start Date] ) && ISBLANK( Upgrade[Completed Date] )
VAR TotalDays = DATEDIFF( Upgrade[Start Date], Upgrade[Completed Date], DAY )
RETURN IF( BlankDates, 0, TotalDays )
输出:
但是,如果您绝对需要输出新的table。我会在这里做这样的事情。
New Table =
ADDCOLUMNS(
SUMMARIZECOLUMNS(
Upgrade[Client],
Upgrade[Start Date],
Upgrade[Completed Date],
"Extra", 1
),
"Total Days",
IF(
ISBLANK( [Start Date] ) && ISBLANK( [Completed Date] ),
0,
DATEDIFF( [Start Date], [Completed Date], DAY )
)
)
输出:
新建table=
总结(
'Upgrade','Upgrade'[客户],
'Upgrade'[开始日期],
'Upgrade'[完成日期],
)
我有一个自定义列“天数”来计算开始日期和完成日期之间的天数。
问题是开始日期和完成日期中的某些行没有日期。
问题 1:如果两列(开始日期、完成日期)中都没有日期,我希望在计算的“天数”列中有一个 0。
问题2:是否可以在summarize中设置条件将空值替换为0,例如if(isblank(start date) show zero.
我尝试使用 IF 语句,但没有用。
样本Table
这将消除所有 start date=BLANK
和 completion date=BLANK
tbl =
SUMMARIZE (
FILTER (
'Upgrade',
ISBLANK ( 'Upgrade'[start date] ) = FALSE ()
&& ISBLANK ( 'Upgrade'[completion date] ) = FALSE ()
),
'Upgrade'[Client],
'Upgrade'[start date],
'Upgrade'[completion date]
)
出于好奇,您为什么要使用 SUMMARIZE()
函数 return 一个 table?对于初学者,出于性能原因,建议改用 SUMMARIZECOLUMNS()
。但是,您不能通过创建一个计算列来完成 Total Days 列条件吗?
Total Days =
VAR BlankDates = ISBLANK( Upgrade[Start Date] ) && ISBLANK( Upgrade[Completed Date] )
VAR TotalDays = DATEDIFF( Upgrade[Start Date], Upgrade[Completed Date], DAY )
RETURN IF( BlankDates, 0, TotalDays )
输出:
但是,如果您绝对需要输出新的table。我会在这里做这样的事情。
New Table =
ADDCOLUMNS(
SUMMARIZECOLUMNS(
Upgrade[Client],
Upgrade[Start Date],
Upgrade[Completed Date],
"Extra", 1
),
"Total Days",
IF(
ISBLANK( [Start Date] ) && ISBLANK( [Completed Date] ),
0,
DATEDIFF( [Start Date], [Completed Date], DAY )
)
)
输出: