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

Deltag kun for specifikke rækker, hvor værdien matcher en variabel

det lyder som om du bare har brug for et LEFT JOIN til de andre tabeller, da det ser ud til at du vil se alle elever fra første sæt uanset jobtilbud/interesser.

Hvis ja... sørg for, at både "Interest"- og "Tilbud"-tabellerne har et indeks, hvor elev-id'et enten er et enkelt element-indeks eller først i et sammensat indeks.

select STRAIGHT_JOIN
      ORS.Student_ID,
      ORS.First_Name,
      ORS.Last_Name,
      ORS.Class,
      ORS.Rank,
      JI.Employer_Interest,
      JI.Interest,
      OFR.Employer_Offer
   from 
      OriginalResultSet ORS

         LEFT JOIN Interest JI
            ON ORS.Student_ID = JI.Student_ID
           AND JI.Employer_Interest = YourPHPVariable

            LEFT JOIN Offers OFR
               on JI.Student_ID = OFR.Student_ID
              AND JI.Employer_Interest = OFR.Employer_Offer

For at forhindre "NULL"-resultater i arbejdsgiverens interesse, interesse og tilbud, kan du pakke dem ind i et Coalesce()-kald såsom (for alle tre kolonner på venstre join)

COALESCE( JI.Employer_Interest, " " ) Employer_Interest


  1. Hvordan indstiller man standardtegnsættet?

  2. Er det muligt at bruge Couch DB eller MySql eller enhver anden DB i Android?

  3. Sorter et tekstaggregat oprettet med array_agg i postgresql

  4. Hvordan kan jeg få fat i og gemme flere $_POST-variabler i en for hver løkke?