Salve , devo aggiornare in una unica query una tabella A con alcuni parametri presi da una altra tabella B.

I valori che arrivano dalla tabella B possono essere NULL oppure avere un valore numerico.

Quando hanno un valore numerico devono essere sommati al campo della tabella A.

Ho optato per questa soluzione e volevo chiedervi se è corretta tecnicamente oppure se esiste un'altra alternativa.

Codice PHP:
$this->query("UPDATE tabella A 
                            SET valore_uno = CASE WHEN :val_uno is true THEN valore_uno + :val_uno 
                                                ELSE valore_uno 
                                           END,
                                valore_due = CASE WHEN :val_due is true THEN valore_due + :val_due 
                                                 ELSE valore_due 
                                            END,
                                valore_tre = CASE WHEN :val_tre is true THEN valore_tre + :val_tre 
                                                ELSE valore_tre 
                                           END;
                                
                        WHERE ....."
);
poi ovviamente i vari valori bind ect ect