Изглежда вървиш в грешен път. Вашата оригинална, нормализирана схема обикновено е по-добра. Ако трябва да покажете магазин/потребител, създайте VIEW
.
Но може да имате своите причини, така че ето:
UPDATE purchases p
SET (shop, shop_user) = (s.name, s."user")
FROM shop s
WHERE s.id = p.shop_id;
Не използвайте запазената дума "user"
като идентификатор.
И „име“ едва ли е добро име , или.
И varchar(255)
в Postgres обикновено показва недоразумение.
Относно varchar(255)
:
varchar(255)
- Трябва ли да добавя ограничение за произволна дължина към колоните VARCHAR?
- Някакви недостатъци при използването на тип данни „текст“ за съхранение на низове?
- Повече подробности в ръководството.