weekly sales dataflow

Can i create a dataflow that creates a column in the dataset that sums my daily level sales to weekly level sales? My input dataset has sales at the daily level, and i would like to join it to another dataset that only has sales at the weekly level, so I'd like to create a column that has the weekly level sales with the week number. 

Best Answer

  • zcameron
    zcameron admin
    Accepted Answer

    This sounds like a case where you'd want to use a GROUP BY statement in the dataflow. In MySQL, it would look something like this:

     

    SELECT

      YEAR(`Date`) AS `Year`

      , WEEKOFYEAR(`Date`) AS `Week Number`

      , SUM(`Sales`) AS `Total Sales`

    FROM

      TABLE_NAME

    GROUP BY

      `Year`  

      , `Week Number`

     

    I included the Year as a field because if you had mulitiple years worth of data in your table, it would be aggregated into one set of weeks otherwise.

     

    The same thing is possible in Magic ETL as well. You'd use the Date Operations transform to create a new column for the year and the week of the year. Then you'll add a Group By transform and add the new year and week of year columns you created as the columns to group by. 

     

    Either of these methods will get you a table of sales totals, aggregated by week number and year, which you can then join onto your other dataset.

     

    I hope this helps! Let me know if you need more details. 

Answers