Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MYSQL JOIN se o campo não for nulo


Se entendi corretamente (você não forneceu nenhum dado de exemplo), esta consulta fornece os dados que você deseja:
SELECT a.*, u1.Name, u2.Name FROM `articles` a
JOIN `users` u1 ON (a.id=1 AND u1.`id` = a.`authorid` )
LEFT JOIN `users` u2 ON (a.`updaterid` IS NOT NULL AND u2.`id` = a.`updaterid`) 

u2.Name será NULL if a.updaterid IS NULL` (ou o usuário do atualizador é excluído) ou manterá o nome de outra forma.