Using ETL formula for finding between dates
Hi, I have a dataset and every row has a date. I want to add a column using ETL that indicates what week that is (starting mondays). So for a row with 3/28/2022, the new column would have "week of 3/28" and for a row with 4/1/2022 it would also say "week of 3/28" since 3/28 was a Monday. A row with 4/5/2022 would say "week of 4/4". How can I approach this?
Best Answer
-
You can do some simple date manipulation to get the Monday of the current week with a Formula Tile
`Date` - INTERVAL (CASE WHEN DAYOFWEEK(`Date`) = 1 THEN 6 ELSE (DAYOFWEEK(`Date`) - 2) END) DAY
DAYOFWEEK
returns a number between 1 (Sunday) and 7 (Saturday).The
CASE
statement is checking if it's a Sunday to subtract 6 days instead of 1.-2
is to reduce the days to subtract to get to Monday. For example Tuesday (3) we need to subtract only 1 day instead of 3 days.You can then tie it all together with a CONCAT function and a DATE_FORMAT:
CONCAT('Week of ', DATE_FORMAT(`Date` - INTERVAL (CASE WHEN DAYOFWEEK(`Date`) = 1 THEN 6 ELSE (DAYOFWEEK(`Date`) - 2) END) DAY, '%m/%d'))
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**3
Categories
- 7.7K All Categories
- 5 Connect
- 921 Connectors
- 244 Workbench
- 478 Transform
- 1.8K Magic ETL
- 60 SQL DataFlows
- 446 Datasets
- 43 Visualize
- 199 Beast Mode
- 2K Charting
- 8 Variables
- 1 Automate
- 348 APIs & Domo Developer
- 82 Apps
- Workflows
- 14 Predict
- 3 Jupyter Workspaces
- 11 R & Python Tiles
- 241 Distribute
- 59 Domo Everywhere
- 241 Scheduled Reports
- 15 Manage
- 36 Governance & Security
- 29 Product Ideas
- 1.1K Ideas Exchange
- Community Forums
- 14 Getting Started
- 1 Community Member Introductions
- 49 Community News
- 18 Event Recordings
- 579 日本支部