Tôi đã khám phá ra một cách đơn giản! Phần sau thêm value3
cột với các giá trị ban đầu mong muốn:
ALTER TABLE numbers
ADD COLUMN value3 INTEGER; -- Exclude the NOT NULL constraint here
UPDATE numbers SET value3=value1+value2; -- Insert data with a regular UPDATE
ALTER TABLE numbers
ALTER COLUMN value3 SET NOT NULL; -- Now set the NOT NULL constraint
Phương pháp này tốt khi postgres có một hàm gốc cho phép tính mà bạn muốn áp dụng cho cột mới. Ví dụ. trong trường hợp này, phép tính tôi muốn là "sum" và postgres thực hiện điều đó thông qua +
nhà điều hành. Phương pháp này sẽ phức tạp hơn đối với các hoạt động không được cung cấp bởi postgres.