Devo aggiornare una tabella da un'altra e ho bisogno di aggiornare tutte le colonne. Oltre a elencare ogni colonna nella SETclausola, c'è un modo per aggiornarle tutte in una volta? Come questo:
update tableA
set * = tableB.*
from tableB where tableA.id = tableB.id
Ho provato in psql, non funziona. Devo elencare ogni colonna in questo modo:
update tableA
set c1 = tableB.c1, c2 = tableB.c2, ...
from tableB where tableA.id = tableB.id
tableBviene creato uso create .. like tableA. Quindi sono sostanzialmente identici. E il motivo per cui lo sto facendo è che devo caricare i dati .csv in una tabella temporanea tableBe quindi aggiornarli in tableAbase ai nuovi dati in tableB. tableAdeve essere bloccato il meno possibile e tableAdeve mantenere l'integrità. Non sono sicuro che 'Elimina quindi Inserisci' sarebbe una buona opzione?