Sembra che tu stia andando nella direzione sbagliata. Il tuo schema originale e normalizzato è in genere superiore. Se devi visualizzare negozio/utente, crea un VIEW
.
Ma potresti avere le tue ragioni, quindi ecco qui:
UPDATE purchases p
SET (shop, shop_user) = (s.name, s."user")
FROM shop s
WHERE s.id = p.shop_id;
Non utilizzare la parola riservata "user"
come identificatore.
E "nome" non è quasi mai un buon nome , anche.
E varchar(255)
in Postgres in genere indica un malinteso.
Informazioni su varchar(255)
:
varchar(255)
- Devo aggiungere un limite di lunghezza arbitrario alle colonne VARCHAR?
- Qualche aspetto negativo dell'utilizzo del tipo di dati "testo" per la memorizzazione di stringhe?
- Maggiori dettagli nel manuale.