Você está bem perto:
(select * from student where SECTION = 'A' order by rand() LIMIT 3
) union all
(select * from student where SECTION = 'B' order by rand() LIMIT 2
)
order by rand();
As subconsultas usam
order by rand()
para obter alunos aleatórios com cada série. A order by rand()
randomiza os cinco alunos. Nota:Esta é a maneira mais simples de realizar o que você deseja. Se os
students
tabela é até moderadamente grande e o desempenho é um problema, existem soluções alternativas.