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);