sql >> Database >  >> RDS >> Mysql

MYSQL vergelijken op join-probleem

SELECT  t.teacherId, s1.subjectName AS name1, s2.subjectName AS name2, s3.subjectName AS name3
FROM    teacherProfile t
LEFT JOIN
        subjects s1
ON      s1.subjectId = t.subjectOne 
LEFT JOIN
        subjects s2
ON      s2.subjectId = t.subjectTwo
LEFT JOIN
        subjects s3
ON      s3.subjectId = t.subjectThree
WHERE   'English' IN (s1.subjectName, s2.subjectName, s3.subjectName)

, of, verwijzend naar uw oorspronkelijke probleem,

SELECT  t.teacherId, s1.subjectName AS name1, s2.subjectName AS name2, s3.subjectName AS name3
FROM    teacherProfile t
LEFT JOIN
        subjects s1
ON      s1.subjectId = t.subjectOne 
LEFT JOIN
        subjects s2
ON      s2.subjectId = t.subjectTwo
LEFT JOIN
        subjects s3
ON      s3.subjectId = t.subjectThree
WHERE   MATCH(s1.subjectName, s2.subjectName, s3.subjectName) AGAINST ('+English +Physics' IN BOOLEAN MODE)

(werkt alleen als beide tabellen MyISAM zijn )

Hiermee worden alle docenten geretourneerd die zowel English . lesgeven en Physics .



  1. Hoe paginering te maken met PDO PHP

  2. Hoe op te lossen Oproep naar ongedefinieerde functie dbase_open() fout in Windows

  3. Hoe meervoudig voortschrijdend gemiddelde te berekenen in MySQL

  4. MySql Triggers om onderliggende records in dezelfde tabel te verwijderen