Wydaje się, że idziesz w złym kierunku. Twój oryginalny, znormalizowany schemat jest zazwyczaj lepszy. Jeśli chcesz wyświetlić sklep / użytkownika, utwórz VIEW
.
Ale możesz mieć swoje powody, więc oto idzie:
UPDATE purchases p
SET (shop, shop_user) = (s.name, s."user")
FROM shop s
WHERE s.id = p.shop_id;
Nie używaj zastrzeżonego słowa "user"
jako identyfikator.
A „imię” rzadko kiedy jest dobrym imieniem .
I varchar(255)
w Postgresie zazwyczaj oznacza nieporozumienie.
O varchar(255)
:
varchar(255)
- Czy powinienem dodać dowolny limit długości do kolumn VARCHAR?
- Jakieś wady używania typu danych „tekst” do przechowywania ciągów?
- Więcej szczegółów w instrukcji.