Either your query is not as shown, or your data isn't: runnin that query on that data will give you no rows returned even if we assume that
academic_year
is actually
academic_year_id
and
class_d
is actually
class_id
Why not? Because there are no rows in your data which match the condition:
WHERE academic_year_id = 6
All your rows contain "1", not "6".
So start by looking closely at your tables and the data they contain; then run your query in parts to find out exactly what each returns before "bolting them together" with
FIND_IN_SET