Il existe plusieurs façons de procéder :
Vous pouvez utiliser un anti-jointure, tel que :
SELECT m.MEMBERID,
m.LASTNAME,
m.FIRSTNAME
FROM MEMBERS m
WHERE m.MEMBERID NOT IN (SELECT DISTINCT MEMBERID
FROM CURRENTLOAN
UNION ALL
SELECT DISTINCT MEMBERID
FROM HISTORY);
Une autre façon (et ma méthode préférée) de faire ce que vous voulez est :
SELECT DISTINCT m.MEMBERID,
m.LASTNAME,
m.FIRSTNAME
FROM MEMBERS m
LEFT OUTER JOIN (SELECT DISTINCT MEMBERID
FROM (SELECT MEMBERID
FROM CURRENTLOAN
UNION ALL
SELECT MEMBERID
FROM HISTORY)) u
ON u.MEMBERID = m.MEMBERID
WHERE u.MEMBERID IS NULL;
Cependant, compte tenu des données que vous avez affichées, cette requête, ainsi que votre requête d'origine, ne devrait renvoyer aucune ligne. SQLFiddle ici
Notez que si vous commentez le prêt actuel au membre 004, "Joe Brown" est renvoyé SQLFiddle ici
Bonne chance.