Consultas con campos calculados

Campos calculados en Consultas

Los campos calculados en una consulta son campos que se construyen en base a los existentes en la tabla.

Los campos calculados siguen cualquiera de los formatos siguientes:

NombreCampoCalculado = Expresión que lo calcula
o
Expresión que lo calcula As ‘Nombre de campo calculado’

Si el nombre del campo calculado incluye espacios se debe encerrar entre corchetes.

Ejercicios

Usando Northwind
use Northwind
go

1. El código del empleado y su nombre completo (el nombre completo no existe en la tabla)

select E.EmployeeID As ‘Código’,
Empleado = E.LastName + Space(1) + E.FirstName
from Employees As E
go

— Otra forma
select E.EmployeeID As ‘Código’,
E.LastName + Space(1) + E.FirstName As ‘Empleado’
from Employees As E
go

2. Empleado y su edad (en la tabla hay fecha de nacimiento)

select E.EmployeeID As ‘Código’,
E.LastName + Space(1) + E.FirstName As ‘Empleado’,
Edad = Datediff(yy,E.BirthDate,GetDate())
from Employees As E
go
En la instrucción anterior se muestran los dos formatos de como presentar campos calculados.

3. Los productos y el valor del Stock (Precio * Stock)

select P.ProductName As ‘Producto’, P.ProductID As ‘Código’,
[Valor del Stock] = P.UnitPrice * P.UnitsInStock,
P.UnitPrice As ‘Precio’, P.UnitsInStock As ‘Stock’
from Products As P
go

4. Productos y las unidades de compra urgente. Existen unidades para comprar urgente cuando el stock es menor a las unidades en orden

select P.ProductID As ‘Código’,P.ProductName As ‘Producto’,
P.UnitsInStock As ‘Stock’, P.UnitsOnOrder As ‘En Orden’,
[Por comprar] = iif(P.UnitsOnOrder > P.UnitsInStock,P.UnitsOnOrder – P.UnitsInStock,0)
from Products As P
go




5. Las órdenes, el monto total de la misma y el impuesto, suponiedo que se trate de un 12%.

select O.OrderID As ‘Nº Orden’,
Format(O.OrderDate,’dd/MM/yy’) As ‘Fecha de Orden’,
O.Freight as ‘Monto’, Impuesto = O.Freight * 0.12
from Orders As O
go

Notas

  • Puede incluirse la cantidad de campos calculados que se necesite, estos siempre se calculan en base a los campos existentes en la tabla.
  • Es recomendable para optimizar el trabajo de las consultas, incluir en las tablas los campos calculados que se usan con frecuencia.