select top 5 * from table where flag =1 order by time desc
union all
select top 5 * from table where flag =2 order by time desc
union all
select top 5 * from table where flag =3 order by time desc
union all
select top 5 * from table where flag =4 order by time desc
union all
select top 5 * from table where flag =5 order by time desc
) as ABC
select top 5 * from table where flag =1 order by time desc
union all
select top 5 * from table where flag =2 order by time desc
union all
select top 5 * from table where flag =3 order by time desc
union all
select top 5 * from table where flag =4 order by time desc
union all
select top 5 * from table where flag =5 order by time desc
) ABC
select top 5 * from table where flag =1 order by ABC.time desc
union all
select top 5 * from table where flag =2 order by ABC.time desc
union all
select top 5 * from table where flag =3 order by ABC.time desc
union all
select top 5 * from table where flag =4 order by ABC.time desc
union all
select top 5 * from table where flag =5 order by ABC.time desc
) ABC