SELECT DISTINCT B
FROM my_table WHERE A IN (3,8)
EDIT:
SELECT B FROM AB WHERE A = 3
INTERSECT
SELECT B FROM AB WHERE A = 8
INTERSECT дает вам строки, которые встречаются в обоих наборах результатов.
2-й РЕДАКТИРОВАТЬ:
SELECT B,COUNT(B)
FROM AB WHERE A IN (3,8)
GROUP BY B
HAVING COUNT(B) = 2
Однако вы должны изменить это в двух местах: в аргументах IN и в конце в COUNT (B) =?. ? должно быть равно количеству аргументов. Я надеюсь, что это поможет.
3-е РЕДАКТИРОВАНИЕ:
SELECT B,COUNT(B)
FROM
(
SELECT DISTINCT A, B FROM AB
) x
WHERE A IN (3,8)
GROUP BY B
HAVING COUNT(B) = 2
Это позволит избежать проблемы повторяющихся записей.