Sql 博士后最后10个工作天
我想选择最近10个工作日内的行。工作日假定为有行的日期 提前谢谢Sql 博士后最后10个工作天,sql,postgresql,Sql,Postgresql,我想选择最近10个工作日内的行。工作日假定为有行的日期 提前谢谢 select * from your_table where your_table.date_field >= current_date - interval '10' day; 用您的表名替换您的表,用日期字段替换日期字段,然后玩得开心。您只需使用以下方法来度过最后十天: select t.* from table t where t.date in (select t2.date fr
select * from your_table where your_table.date_field >= current_date - interval '10' day;
用您的表名替换您的表,用日期字段替换日期字段,然后玩得开心。您只需使用以下方法来度过最后十天:
select t.*
from table t
where t.date in (select t2.date
from table t2
group by t2.date
order by t2.date desc
limit 10
);
另一种方法是使用稠密秩函数:
select t.*
from (select t.*, dense_rank() over (order by date desc) as seqnum
from table t
) t
where seqnum <= 10;
这两种方法都假定date列没有时间组件。删除时间部分对于这两个版本来说都是一个微不足道的调整。编辑您的问题并显示示例数据和所需结果。此问题不需要示例数据。这个问题不言自明。