Since we have no table structures, I'm gonna have to abstract a little or make up some stuff. Assuming there's a column in the Payments table that specifies what year the payment is for, you'd find those...
SELECT MemberID
FROM Payments
WHERE MembershipYear = 2024
Then you'd exclude those from your set:
Code:SELECT * FROM Membership m WHERE NOT EXISTS (SELECT 1 FROM Payments WHERE MembershipYear = 2024 AND MemberID = m.MemberID);