Pull Data From One Column Based On Condition From a Different Column

Hey guys!
I've been at this for a while, Magic ETL, Analyzer, Google, nothing seems to answer the following (maybe it's because I'm new)
I can't seem to find a means to pull data from a numerical column based on the condition of a categorical column without aggregating as a sum. Could anyone help me with this without changing the values from the numerical column?
My table is like the following:
Column A | Column B | Date |
234 | 2019 | 2019-06-13 |
0 | 2019 | 2019-09-30 |
16 | 2019 | 2019-12-21 |
1 | 2020 | 2020-06-13 |
1 | 2020 | 2020-09-30 |
32 | 2020 | 2019-12-21 |
And I want to turn it into the following:
Previous | Current | Date |
234 | n/a | 2019-06-13 |
0 | n/a | 2019-09-30 |
16 | n/a | 2019-12-21 |
n/a | 1 | 2020-06-13 |
n/a | 1 | 2020-09-30 |
n/a | 32 | 2019-12-21 |
I'm trying to use the advanced comparative gauge tool in the Analyzer.
Any tips or ideas, I am all ears *ahem* ...eyes
Best Answer
-
I’m on mobile and the dojo won’t let me edit my reply but the formula should look like this for prior
CASE WHEN `Column B` = YEAR(CURRENT_DATE) - 1 THEN `Column A` END
and this for current
CASE WHEN `Column B` = YEAR(CURRENT_DATE) THEN `Column A` END
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**1
Answers
-
Hi @user052846
CASE statements are your friend in this case. Assuming you’re looking for data from the prior year you can use logic to conditionally set a new column value using a case statement in a beast mode.
For your current Column:
CASE WHEN `Column B` YEAR(CURRENT_DATE) THEN `Column A` END
Previous Column
CASE WHEN `Column B` YEAR(CURRENT_DATE) - 1 THEN `Column A` END
since no ELSE condition is specified in the case statement it defaults to NULL (blank)
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**1 -
I’m on mobile and the dojo won’t let me edit my reply but the formula should look like this for prior
CASE WHEN `Column B` = YEAR(CURRENT_DATE) - 1 THEN `Column A` END
and this for current
CASE WHEN `Column B` = YEAR(CURRENT_DATE) THEN `Column A` END
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**1
Categories
- All Categories
- Product Ideas
- 2K Ideas Exchange
- Connect
- 1.3K Connectors
- 308 Workbench
- 7 Cloud Amplifier
- 10 Federated
- Transform
- 661 Datasets
- 117 SQL DataFlows
- 2.2K Magic ETL
- 819 Beast Mode
- Visualize
- 2.6K Charting
- 85 App Studio
- 46 Variables
- Automate
- 193 Apps
- 483 APIs & Domo Developer
- 85 Workflows
- 23 Code Engine
- AI and Machine Learning
- 22 AI Chat
- 3 AI Projects and Models
- 18 Jupyter Workspaces
- Distribute
- 116 Domo Everywhere
- 282 Scheduled Reports
- 11 Software Integrations
- Manage
- 142 Governance & Security
- 9 Domo Community Gallery
- 49 Product Releases
- 13 Domo University
- Community Forums
- 41 Getting Started
- 31 Community Member Introductions
- 115 Community Announcements
- 5K Archive