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

MySQL JOIN con condizioni IF

Sono sicuro che questo è già stato risolto, ma per le persone con un problema simile.

Puoi anche provare a più join a sinistra per ottenere tutti i dati

SELECT *, IF (users.type = 1, p.name, c.name) AS name FROM users
LEFT JOIN private AS p ON (users.type = 1 AND users.id = p.user_id) 
LEFT JOIN company AS c ON (users.type != 1 AND users.id = c.user_id)