sql >> Databasteknik >  >> RDS >> PostgreSQL

Postgres lägger till kolumn med initialt beräknade värden

Jag upptäckte ett enkelt sätt! Följande lägger till value3 kolumn med önskade initiala värden:

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

Den här metoden är bra när postgres har en inbyggd funktion för den beräkning du vill tillämpa på den nya kolumnen. T.ex. i det här fallet är beräkningen jag vill ha "summa", och postgres gör det via + operatör. Denna metod kommer att vara mer komplex för operationer som inte tillhandahålls av postgres.



  1. Tillgång till en MySQL-databas via Jupyter Notebook med Python3

  2. Konfigurationsfil för att hålla anslutningssträngparametrar i Java

  3. Gratis eller provversion av Oracle-databasmiljö

  4. Mysql regex-fel #1139 med hjälp av bokstavlig -