Ваш текущий запрос действительно должен работать, хотя я бы написал его, используя явное внутреннее соединение:
SELECT DISTINCT t1.*
FROM TABLE1 t1
INNER JOIN TABLE2 t2
ON t1.ID = t2.ID AND
t1.NAME = t2.NAME AND
t1.MEMBER = t2.MEMBER AND
t1.SMS_MEMBER = t2.SMS_MEMBER;
Просто для удовольствия, вот еще один способ сделать ваш запрос, используя объединение с последующей агрегацией:
SELECT ID, NAME, MEMBER, SMS_MEMBER
FROM
(
SELECT ID, NAME, MEMBER, SMS_MEMBER FROM TABLE1
UNION ALL
SELECT ID, NAME, MEMBER, SMS_MEMBER FROM TABLE2
) t
GROUP BY ID, NAME, MEMBER, SMS_MEMBER
HAVING COUNT(*) = 2;
Условие HAVING COUNT(*) = 2
гарантирует, что только идентичные записи, появившиеся в обеих таблицах, окажутся в наборе результатов.