How to grab the last x days in MySQL Table
Hi. I have a very simple task of grabbing the data for the past 7 days. My current query looks like this:
select * from `table` where `date` > CURDATE() -7
This works perfectly well, only when we get to the next month it is not grabbing any day from the previous month. I need to grab the data regardless of what month it is, just the last 7 days. I can't find the right syntax for this.
Thank you in advance!
0
Answers
-
MySQL has a DATE_SUB function that would work for this. Try this for your where clause:
WHERE `date` > DATE_SUB(CURRENT_DATE, INTERVAL 7 DAY)
**Check out my Domo Tips & Tricks Videos
**Make sure toany users posts that helped you.
**Please mark as accepted the ones who solved your issue.1 -
@Mark It works! Thank you very much!
1 -
Your version is close you just need to specify your units (day intervals):
select * from `table` where `date` > CURDATE() - INTERVAL 7 DAY
DATE_SUB(CURRENT_DATE, INTERVAL 7 DAY)
and
CURDATE() - INTERVAL 7 DAY
are functionally the same. Also
CURDATE
andCURRENT_DATE
are the same, they just have different names.**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**0
Categories
- 10.5K All Categories
- 7 Connect
- 917 Connectors
- 250 Workbench
- 463 Transform
- 1.7K Magic ETL
- 69 SQL DataFlows
- 476 Datasets
- 190 Visualize
- 252 Beast Mode
- 2.1K Charting
- 11 Variables
- 17 Automate
- 354 APIs & Domo Developer
- 89 Apps
- 3 Workflows
- 20 Predict
- 5 Jupyter Workspaces
- 15 R & Python Tiles
- 246 Distribute
- 62 Domo Everywhere
- 243 Scheduled Reports
- 21 Manage
- 42 Governance & Security
- 173 Product Ideas
- 1.2K Ideas Exchange
- 12 Community Forums
- 27 Getting Started
- 14 Community Member Introductions
- 55 Community News
- 4.5K Archive