select         count(if(b.rk=2,1,null))/count(if(b.rk=1,1,null)) from (select           id,           riqi,           row_number() over(partition by id order by riqi) rk       from a      ) b 这样就可以实现了,我在数据库中建了假数据,已经测试过了