假设表包含以下列name
、created_at
,它们是字符串和日期类型。
寻求任何帮助,以生成一个SQL查询,该查询输出任何30天范围内的行,其中至少有5行或更多行的表的created_at
列在该范围内。
- 查询可以只输出行或范围中的最后一行,以容易的为准
- 30天的范围可以从今天开始,向后或从第一排开始,等等
- 如果需要,可以对created_at进行分组
我认为这是一个带过滤的聚合查询:
select name, max(created_at)
from t
where created_at >= @start - interval 30 day and
created_at < @start
group by name
having count(*) >= 5;