Cumulative total of users with activity date

I need want to see how many active users we have over time. I have a field "last_activity_at", if it has a value (not null) they are active. And I want to add the sum total of active dates in the week they fall.

I was able to accomplish this somewhat in beast most, but I think I need to use etl to filter out duplicate weeks...


CASE
WHEN ifnull(`last_activity_at`,0)=0
THEN 'Is null'
ELSE SUM(SUM(1)) OVER (ORDER BY (DATE_FORMAT(`last_activity_at`,'%Y-%m-%d')))
END

 

 

Comments

  • jaeW_at_Onyx
    jaeW_at_Onyx Budapest / Portland, OR 🟤

    There's a bunch going on here ...

     

    1) why are you building a CASE statement that returns text when your ELSE clause will return a number?

    2) if I had to guess you have Date on the axis hence why you're seeing repeated dates.  swap it with the math in your order by clause, DATE_FORMAT(`last_activity_at`,'%Y-%m-%d')

    3) if you still need a CASE Statement, it has to be executed inside the window function.