想问下 如果给定日期 往前查三天 没数据的日子就跳过 必须要往前查三天的数据 比如8号有数据 7号 6号没有 5号才有数据 4号也有数据 怎么写sql才能查询到8号 5号 4号的数据
时间: 2024-03-28 12:41:40 浏览: 146
mysql数据库要按当天、昨天、前七日、近三十天、季度、年查询.docx
可以使用子查询和条件语句进行查询,具体的 SQL 语句如下:
```
SELECT *
FROM your_table
WHERE date IN (
SELECT date
FROM your_table
WHERE date >= DATE_SUB('your_date', INTERVAL 3 DAY) AND date <= 'your_date'
GROUP BY date
HAVING COUNT(*) = 1
)
```
其中,`your_table` 是你要查询的表名,`your_date` 是你给定的日期。这个 SQL 语句的思路是先查询出给定日期往前三天内所有有数据的日期,再在表中查找这些日期对应的数据。这里用到了子查询和条件语句,可以达到你想要的查询结果。
阅读全文