Oracle 表中ID与有效日期为联合主键,存在相同ID不同有效日期的多条数据,如何选出日期最大的

我是要使用insert into 表1 select from 表2 复制旧表中的数据到新表中,但存在相同ID多条有效开始日期的情况,如何选出所有不同ID的最大有效开始日期且这个日期小于等于当前日期的数据!

大概写法是
select id,max有效开始日期 from table where 有效开始日期<=当前日期 group by id

不知道你的有效开始日期会不会大于当前日期,如果不会,那么这个sql没问题,如果会,那么要换一个sql
select id,max有效开始日期 from table group by id having max有效开始日期<=当前日期
温馨提示:答案为网友推荐,仅供参考