select t2.a, t2.b, t2.c
  from (select t1.a,
               t1.b,
               t1.c,
               row_number() over(partition by a, b order by c) rn
          from (select t.*, row_number() over(partition by a order by b) rn
                  from t) t1
         where rn <= 10)t2
         where t2.rn<=3;