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

Unisci:i campi della tabella 2 hanno la precedenza su quelli della tabella 1

Usa un LEFT JOIN insieme a IFNULL per controllare prima le sostituzioni e il fallback se non esistono sostituzioni.

SELECT p.partnum, 
    IFNULL(d.price, p.price) AS price,
    IFNULL(d.installtime, p.installtime) AS installtime
FROM products p 
  LEFT JOIN overrides d ON d.dealerID = 123
      AND p.partnum = d.partnum  

Nota:ho spostato il WHERE dealerID = 123 al predicato join, per recuperare tutto prodotti e le sostituzioni per un rivenditore specifico.