Mysql
 sql >> Database >  >> RDS >> Mysql

Problema con la query dei dati in una tabella

Piuttosto che vincolo , penso tu intenda condizione . Devi usare un OR , poiché non esiste una riga che possa soddisfare tutti i WHERE condizioni come l'hai scritto:

select int_value 
from test  
where (qid = 1 and string_value = 'Red')  
    or (qid = 2 and string_value = "Green") 

Se vuoi che gli int_values ​​soddisfino entrambe le condizioni, puoi farlo:

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