Also habe ich drei Tabellen: Firmen, Adressen und Firmenadresse.PostgreSQL - Spalte aus verwandter Tabelle kopieren
Aus Gründen der Optimierung muss ich city
Spalte von addresses
Tabelle zu companies
Tabelle kopieren. Die Beziehung zwischen Firmen und Adressen ist viele zu eins (da viele Firmen dieselbe Adresse belegen können). Sie sind über die Tabelle company_address verbunden, die aus den Spalten address_id
und company_id
besteht.
ich diese Lösung für Fall ohne Zwischentisch gefunden: How to copy one column of a table into another table's column in PostgreSQL comparing same ID
Abfrage zu ändern Versuch kam ich mit:
UPDATE company SET company.city=foo.city
FROM (
SELECT company_address.company_id, company_address.address_id, address.city
FROM address LEFT JOIN company_address
ON address.id=company_address.address_id
) foo
WHERE company.id=foo.company_id;
aber es gibt Fehler:
ERROR: column "company" of relation "company" does not exist
Ich kippe Figur was passiert. Ich werde für irgendwelche Ideen dankbar sein.
'UPDATE Firma SET company.city = foo.city' == >>' UPDATE Firma SET city = foo.city' (und Sie brauchen die Unterabfrage nicht) – joop