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

Come ottenere il nome del supervisore invece dell'ID utente + INNER JOIN in MYSQL

Devi unirti alla tabella utente due volte perché la stai abbinando sia per il nome del membro che per il nome del supervisore. Ho anche usato LEFT JOIN perché a volte il motivo non ha un valore ma vuoi comunque estrarre i record dalle altre tabelle.

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