select fecha, cantidad from ( select fecha, cantidad, row_number() over (partition by fecha order by cantidad desc) x from t1 ) alias where x < 4 order by fecha asc, cantidad desc