怎么查询oracle表中,除了最小日期以外的所有数据,日期字段report_date
比如这个id01是13的,最小得是9号,求id01 9号以外的数据,group by id01 根据id01来分组
怎么查询oracle表中,除了最小日期以外的所有数据,日期字段report_date
提sql问题的时候,麻烦给一下表结构和数据说明,以及最终需要的数据格式。
根据你当前的描述来看,无非加个where条件了
select * from 表
where 表.日期>(select min(日期) from 表)
你不是说表里面的最小日期么?为什么还会有个group by 呢?你这group by 以后,就不是唯一的最小日期了,而是分组以后的最小日期,但你问题中并没有明确描述到底是个什么样的场景
我先假定你是想 根据id01分组,每个id01取一条时间最小的数据,那么此时使用开窗函数中的row_number就可以了
select * from (
select a.*,row_number() over(partition by id01 order by report_date) rn from 表 a)
where rn>1