1つの方法は、集計とhaving
を使用します :
select s.user_id
from settings s
where (key, value) in ( ('color', 'blue'), ('size', '5') )
group by s.user_id
having count(*) = 2;
これは、重複する設定がないことを前提としています(重複する場合は、count(distinct)
を使用する必要があります 。
1つの方法は、集計とhaving
を使用します :
select s.user_id
from settings s
where (key, value) in ( ('color', 'blue'), ('size', '5') )
group by s.user_id
having count(*) = 2;
これは、重複する設定がないことを前提としています(重複する場合は、count(distinct)
を使用する必要があります 。