Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Problem mit Abfragedaten in einer Tabelle

Statt Einschränkung , ich glaube du meinst Zustand . Sie müssen ein OR verwenden , da es keine Zeile gibt, die alle WHERE erfüllen kann Bedingungen, wie Sie es geschrieben haben:

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

Wenn Sie möchten, dass die int_values ​​beide Bedingungen erfüllen, können Sie Folgendes tun:

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