CONCAT_WS e UPDATE incorciato di due tabella in MYSQL
| Appunti - Sql |
UPDATE utenti_fan AS uf
LEFT JOIN utenti as u
ON uf.utente = u.id_utenti
SET uf.nominativo = CONCAT_WS(" ", u.nome, u.cognome)
Questa query ha la funzione di prelevare i campi nome e cognome da una tabelle e inserirli nel campo nominativo dell'altra. Ovviamente per evitare un casino di proporizione bibliche è necessario che ci sia un riferimento tra una tabella ed un altra, che tipicamente è un id che lega i due record su tabelle diverse, nel nostro caso il campo utente sulla prima tabella e il campo id utente sulla seconda.
Si è fatto inoltre uso dell'istruzione CONCAT_WS, sconsigliata per questioni di prestazioni dall'ottimizzatore del mio ufficio, ma in alcuni casi essenziale: da ussare quindi con cautela. L'istruzione non fa altro che unire (concatenare) i campi elencati tra le parentesi conte utilizzando come stringa di separazione i caratteri inseriti tra virgolette al primo valore che viene passato.
| Succ. > |
|---|