How do I calculate the average of the past 3 sales of an item?
Answers
-
Hi @meekey
you’ll want to use a lag function to get the last three values. Typically I use this when doing a rolling average like you’re needing. I’ve done a write up on rolling average and lag functions here: https://dojo.domo.com/main/discussion/52679/domo-ideas-conference-beast-modes-rolling-averages
window functions require your CSM to enable them in your instance to use
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**0 -
I see so many examples of lag functions that all reference a date, so since I don't care about date necessarily, do I just leave end it with over ()?
(lag((sale_price),1) over( ) +
lag((sale_price),2) over( ) +
lag((sale_price),3) over( ) +
)/3
0 -
...also, I don't see LAG in my list of available functions... Sorry for such basic questions, Grant. Thanks for your help :)
0 -
@meekey the OVER clause tells you what to partition by - in your case I'd assume you'd want to do it on your asset and then order by date descending so you could find the last 3 sales for each asset.
Something like: lag(
sale_price
OVERasset
ORDER BYsale_date
desc)I think you may have to reach out to your CSM to get the lag function enabled if it doesn't currently work in your instance.
2
Categories
- All Categories
- 1.4K Product Ideas
- 1.4K Ideas Exchange
- 1.4K Connect
- 1.1K Connectors
- 278 Workbench
- 4 Cloud Amplifier
- 4 Federated
- 2.7K Transform
- 89 SQL DataFlows
- 557 Datasets
- 2K Magic ETL
- 3.3K Visualize
- 2.3K Charting
- 571 Beast Mode
- 11 App Studio
- 28 Variables
- 579 Automate
- 141 Apps
- 414 APIs & Domo Developer
- 23 Workflows
- 1 DomoAI
- 28 Predict
- 12 Jupyter Workspaces
- 16 R & Python Tiles
- 352 Distribute
- 92 Domo Everywhere
- 258 Scheduled Reports
- 2 Software Integrations
- 92 Manage
- 89 Governance & Security
- 9 Product Release Questions
- Community Forums
- 42 Getting Started
- 28 Community Member Introductions
- 88 Community Announcements
- 4.8K Archive