Como crear un campo calculado en SQL

Como crear un campo calculado en SQLComo crear un campo calculado en SQL mediante una consulta. Un campo calculado es una columna en nuestra base de datos, que se crea a partir de una operación numérica.

Muchos usuarios generan este tipo de campos calculados para generar una vista de datos, un campo temporal que nos dará un resultado de salida mediante una consulta a la base.

Por ejemplo, puede ser la suma de un producto, el promedio de dos variables o la multiplicación de dos elementos. En este post voy a mostrar algunos ejemplos del campo calculado mediante SSMS.

Como crear un campo calculado en SQL

Bien en el siguiente ejemplo voy a generar una nueva tabla en mi base de datos, en esta tabla voy a declarar los nuevos campos y entre ellos estará el campo calculado.

Como crear un campo calculado en SQL

Podemos ver en la imagen anterior el código donde estoy ordenando desde una base de datos llamada Supermercado, se creó una tabla llamada pedidos en donde se crearon campos como pedidoId, productoId, precio, cantidad. Para posteriormente crear un campo calculado que nos devuelve un total del precio del producto y la cantidad comprada.

Use Supermercado
go

Create table pedidos
(pedidoId int not null primary key,
productoId int not null,
precio decimal(8,2),
cantidad int,
---PERSISTED hace que nuestro campo no sea virtual, sea permanente
total as precio * cantidad PERSISTED
)
GO
Insert into pedidos (pedidoId,productoId,precio,cantidad)
values (1,1,235.90,8)
go

Ahora bien, si queremos demostrar que el campo fue generado de manera exitosa. Podemos lanzar una consulta a la información de nuestra tabla.

use Supermercado
go

select * from dbo.pedidos
go

Acá podemos ver que se realizó la operación de la multiplicación del precio por la cantidad. Como esta operación se pueden realizar más tipos de cálculos matemáticos.

Aprende como crear campos calculados en SQL

Acá te comporto un video del procedimiento de como lo realice.

Autor: DonBloguero

Desarrollador Backend

Deja un comentario

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