Något sådant här borde uppfylla specifikationen:
SELECT f.bar
FROM frequents f
WHERE f.drinker IN ('John','Rebecca')
GROUP
BY f.bar
HAVING COUNT(DISTINCT f.drinker) < 2
- hämta alla
barför "John" och/eller "Rebecca" - komprimera raderna till en enda rad för varje
bar - få ett antal
drinkerför varje stapel - kassera rader som har ett antal 2 (dvs. både John och Rebecca)
- lämnar bara värden för
barför John och inte Rebecca eller vice versa