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

So erhalten Sie den Namen des Supervisors anstelle der Benutzer-ID + INNER JOIN in MYSQL

Sie müssen der Benutzertabelle zweimal beitreten, da Sie sie sowohl für den Mitgliedsnamen als auch für den Supervisornamen abgleichen. Ich habe auch LEFT JOIN verwendet denn manchmal hat der Grund keinen Wert, aber Sie möchten trotzdem die Datensätze aus den anderen Tabellen abrufen.

SELECT u1.userid, a.date, u1.name, d.reason, u2.name AS supervisor
FROM user u1
LEFT JOIN attendance a ON u1.userid = a.member
LEFT JOIN detail d ON u1.userid = d.userid
LEFT JOIN user u2 ON a.supervisor = u2.userid
WHERE d.attendance = 0