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

MYSQL JOIN se il campo non è nullo

Se ho capito bene (non hai fornito dati di esempio), questa query fornisce i dati che desideri:

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 sarà NULL se a.updaterid IS NULL` (o l'utente del programma di aggiornamento viene eliminato) o manterrà il nome in caso contrario.