¿Qué es un campo calculado en SQL Server?

Un campo calculado es un campo virtual, que no está realmente almacenado en la tabla (a no ser que dicho campo se marque como PERSISTED). Utiliza datos de otros campos para calcular su valor en el momento que se visualiza la fila.

Tiene las siguientes limitaciones:

  • No se pueden utilizar restricciones DEFAULT, FOREIGN KEY o NOT NULL. No obstante, si el resultado de la expresión y el tipo de datos del resultado está permitido en columnas de tipo índice, un campo calculado puede usarse como índice, o como parte de una restricción PRIMARY KEY o UNIQUE.
  • No pueden ser objetivo de sentencias INSERT o UPDATE.

Ejemplo de creación de un campo calculado mediante T-SQL:

CREATE TABLE dbo.LineasFactura (
     IdLinea int IDENTITY (1,1) NOT NULL
   , Cantidad smallint
   , Precio money
   , Total AS Cantidad * Precio
);

 

PERSISTED). Utiliza datos de otros campos para calcular su valor en el momento que se visualiza la fila.

Tiene las siguientes limitaciones:

  • No se pueden utilizar restricciones DEFAULT, FOREIGN KEY o NOT NULL." data-share-imageurl="" style="position:fixed;bottom:0px;left:0px;">