Mysql
 sql >> Base de données >  >> RDS >> Mysql

Problème avec les données de requête dans une table

Plutôt que de contraindre , je pense que vous voulez dire condition . Vous devez utiliser un OR , puisqu'il n'y a pas une seule ligne qui puisse satisfaire tous les WHERE conditions telles que vous l'avez écrite :

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

Si vous voulez que les int_values ​​satisfassent les deux conditions, vous pouvez faire ceci :

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