=
se puede usar cuando la subconsulta devuelve solo 1 valor.
Cuando la subconsulta devuelve más de 1 valor, deberá usar IN
:
select *
from table
where id IN (multiple row query);
Por ejemplo:
SELECT *
FROM Students
WHERE Marks = (SELECT MAX(Marks) FROM Students) --Subquery returns only 1 value
SELECT *
FROM Students
WHERE Marks IN
(SELECT Marks
FROM Students
ORDER BY Marks DESC
LIMIT 10) --Subquery returns 10 values