Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL Join et obtient toutes les relations même si 0

pour que la jointure gauche soit effective, vous devez déplacer la condition earned_trophys.user_id = 1 dans le on clause au lieu de where .

select
    trophy.name,
    earned_trophys.user_id,  
    count(user_id) as temp
from
    trophy
left join
    earned_trophys
on
    trophy.trophy_id = earned_trophys.trophy_id and earned_trophys.user_id = 1
group by
    name