sql >> Database >  >> RDS >> Mysql

Opvragen vanuit selectievakjes

Eén kolom kan niet meerdere waarden hebben. Probeer dit:

SELECT tblresponse.response
FROM tblrelation LEFT JOIN
     tblresponse
      ON tblrelation.responseID = tblresponse.responseID
GROUP BY tblresponse.response
having sum(case when tblrelation.symptomID = '3' then 1 else 0 end) > 0 and
       sum(case when tblrelation.symptomID = '4' then 1 else 0 end) > 0

Dit groepeert alle relaties voor een bepaald antwoord. De having clausule telt het aantal dat '3' is en afzonderlijk dat '4' is. Als deze beide groter zijn dan 0, wordt het antwoord geretourneerd.

Trouwens, als de ID's cijfers zijn, heb je de aanhalingstekens niet nodig.



  1. Hoe een vervolgkeuzelijst met een vooraf geselecteerde optie te tonen

  2. Kan MySQL UDF niet installeren

  3. join op twee externe sleutels uit dezelfde tabel in SQL

  4. Hoe voeg ik een post_id in een mysql-database in?