温馨提示:本文翻译自stackoverflow.com,查看原文请点击:powerbi - How to calculate the Yeserday, last 7 days, this week till day, this month till day user logged coun
powerbi powerbi-custom-visuals powerbi-desktop powerbi-embedded powerbi-datasource

powerbi - 如何计算昨天,过去7天,从本周到今天,从本月到天的用户登录的时间

发布于 2020-04-12 11:55:48

我正在尝试计算系统上的登录用户数。

在我的桌子上

ID,TRANSDATE现在我要计算四个类别的度量

昨天,过去7天,这个星期直到一天,这个月直到一天。

Yesterday = 

CONCATENATE(
    CONCATENATE(
        "Yesterday Count",
        UNICHAR(10)
    ), " (" & 
    FORMAT(TODAY - 1, "DD-MMM") 
    & ")"
)

Last 7  Days =  

CONCATENATEN(
        CONCATENATE(
            "Last 7 Days  Count",UNICHAR(10)
        ), 
    " (" &  
        FORMAT(TODAY() - 7,"DD-MMM") 
    & " to " & 
        FORMAT(TODAY() - 1,"DD-MMM") &")" 
)


This Week till date = 

CONCATENATE(
    CONCATENATE(
        “This Week till date Count”,
        UNICHAR(16)
    ), SWITCH(
        TRUE(),
        FORMAT(
            if (
            WEEKDAY(TODAY(),1) == 1, 
            TODAY(),
            TODAY() - (WEEKDAY(TODAY(),1) - 1))
        ,"DD-MMM") == 
        FORMAT(TODAY(),"DD-MMM"), " ("& 
        FORMAT{TODAY() ,"DD-MMM") &“)", 
        FORMAT(
            if (
            WEEKDAY(TODAY(),1) == 1, 
            TODAY(),
            TODAY() - (WEEKDAY(TODAY(),1) - 1)
        ),"DD-MMM") <> 
        FORMAT(TODAY(),"DD-MMM")," ("&
        FORMAT(
            if(
            WEEKDAY(TODAY(),1) == 1, 
            TODAY(),
            TODAY() - (WEEKDAY{TODAY(),1) - 1)
        ),"DD-MMN") &" to “& 
        FORMAT(TODAY(), "DD-MMM") &")"
)

This Month till date = 

CONCATENATE(
    CONCATENATE(
        "This Month till date Count”,
        UNICHAR(10)
    ), SWITCH(
        TRUE() ,
        FORMAT(DATE(
            YEAR(TODAY()),
            MONTH(TODAY()),
            1),
            "DD-MMM"
        ) == 
        FORMAT(
            TODAY(),
            "DD-MMM"
        ), “ ("& 
        FORMAT(
            TODAY(),
            "DD-MMM"
        ) &")", 
        FORMAT(
            DATE(
            YEAR(TODAY()),
            MONTH(TODAY())
            ,1
            ),
            "DD-MMM") <> 
            FORMAT(
                TODAY(),
                "DD-MMM"
            )," ("& 
            FORMAT(
                DATE(
                YEAR(TODAY()),
                MONTH(TODAY()),
                1),
                "DD-MMM") &" to “& 
                FORMAT(
                TODAY() , 
                "DD-MMM" &") "
)

查看更多

提问者
KARTHIKEYAN.A
被浏览
1.5k
KARTHIKEYAN.A 2020-02-05 12:44

我已经按照以下方式解决了

YesterdayM = 

CALCULATE(
    DISTINCTCOUNT('user’[Id]),
        FILTER('user’, [TRANSDATE] = TODAY() - 1)
    ) + 0


LastSevenDaysM = 

CALCULATE(
    DISTINCTCOUNT(‘user’[Id]),
        FILTER(‘user‘,[TRANSDATE] >= (TODAY() - 7) && [TRANSDATE] < TODAY())
    ) + 0 


CurrentWeekTillDateM = 

CALCULATE(
    DISTINCTCOUNT( 'user’ [Id]),
        FILTER(’user',[TRANSDATE] >= 
            if(
            WEEKDAY(TODAY(),1) == 1, 
            TODAY(),
            TODAY() - (WEEKDAY(TODAY(),1) - 1)
            )
        )
) + 0


CurrentMonthTillDateM = 

CALCULATE(
    DISTINCTCOUNT(‘user‘ [Id]),
        FILTER(‘user‘, [TRANSDATE] >= 
        DATE(
        YEAR(TODAY()),
        MONTH(TODAY())
        ,1)
) + 0