Anda cukup dekat:
(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();
Subquery menggunakan order by rand() untuk mendapatkan siswa acak dengan setiap kelas. order by rand() mengacak kelima siswa.
Catatan:Ini adalah cara paling sederhana untuk mencapai apa yang Anda inginkan. Jika students tabel bahkan cukup besar dan kinerja menjadi masalah, ada solusi alternatif.