PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Postgres добавя колона с първоначално изчислени стойности

Открих прост начин! Следното добавя value3 колона с желаните начални стойности:

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

Този метод е добър, когато postgres има собствена функция за изчислението, което искате да приложите към новата колона. напр. в този случай изчислението, което искам, е "сума", а postgres прави това чрез + оператор. Този метод ще бъде по-сложен за операции, които не са предоставени първоначално от postgres.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PDO не хвърля изключение с необвързани параметри (и без променливи в заявката)

  2. Сложни леви външни съединения в Oracle, конвертиране в PostgreSQL

  3. postgresql връща 0, ако върнатата стойност е нула

  4. Най-добрият начин за съхраняване на време над 24:00:00 в postgresql?

  5. Където условие за съединена маса в Sequelize ORM