PostgreSQL – Generar Columnas

Columnas generadas es una columna especial que se calcula con la ayuda de otras columnas. La columna generada se actualiza cada vez que se producen cambios en una fila y no se puede anular. En Columnas generadas resultado calculado por referencia a la otra columna de la tabla. La columna de generación solo puede usar funciones inmutables y no puede usar subconsultas.

Las columnas generadas pueden ser de dos tipos, almacenadas o virtuales. Columnas generadas almacenadas evaluadas cuando se escribe como en comando básico (INSERTAR o ACTUALIZAR), ocupa almacenamiento y similar a la vista materializada (excepto que siempre se actualiza automáticamente). Columnas generadas virtuales evaluadas cuando se lee, no ocupa almacenamiento y es similar a la vista.

Pero actualmente, PostgreSQL implementa solo columnas generadas almacenadas.

Sintaxis de PostgreSQL para CREAR TABLA usando columnas generadas de la siguiente manera:

CREATE TABLE table_name (
  column_name_1 datatype(length)  column constrain (if any),
  column_name_2 datatype(length)  column constrain (if any) ,
   .
   .
   .
   .
  column_name datatype GENERATED ALWAYS AS  (expression) STORED
);

 Se debe especificar una palabra clave ALMACENADA como tipo de columna.

 Ejemplo: una expresión de cálculo por columnas generadas:

 CREATE TABLE  Addition (
    number_1 int,
   number_2 int,
   number_3 int,
   add int  GENERATED ALWAYS AS (number_1 + number_2 + number_3) STORED
)
 INSERT INTO  Addition(number_1, number_2, number_3) VALUES  (1,2,3) , (8,-9,2) , (7,1 ,NULL);
 TABLE Addition; 

Producción:

Publicación traducida automáticamente

Artículo escrito por shivanijaiswal6300 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *