Zamiast ograniczenia , myślę, że masz na myśli stan . Musisz użyć OR
, ponieważ nie ma jednego wiersza, który spełniałby wszystkie wymagania WHERE
warunki jak to napisałeś:
select int_value
from test
where (qid = 1 and string_value = 'Red')
or (qid = 2 and string_value = "Green")
Jeśli chcesz, aby wartości int_values spełniały oba warunki, możesz to zrobić:
select int_value
from test
where (qid = 1 and string_value = 'Red')
or (qid = 2 and string_value = "Green")
group by int_value
having count(concat(distinct qid, string_value)) = 2