Trying to retrieve just users that don’t have a disabled campaign, where disabled = 1
.
A user can have a disabled campaign and a non-disabled campaign, but if they have any disabled campaigns I want to exclude them from my final result.
Thinking I need something like
SELECT DISTINCT user_id, CASE WHEN disabled = 1 THEN 'Disabled' ELSE 'Good' END AS campaign_disabled
But this just returns two rows for each user_id
, one being Good
and the other campaign_disabled
Advertisement
Answer
You want the users that have disabled = 0
for all their campaigns, so the max value of the column disabled
must be 0
:
SELECT user_id FROM tablename GROUP BY user_id HAVING MAX(disabled) = 0