Recherche…


Une colonne est calculée à partir d'une expression

Une colonne calculée est calculée à partir d'une expression pouvant utiliser d'autres colonnes dans la même table. L'expression peut être un nom de colonne non calculé, une constante, une fonction et toute combinaison de ces éléments connectée par un ou plusieurs opérateurs.

Créer une table avec une colonne calculée

Create table NetProfit
(
    SalaryToEmployee            int,    
    BonusDistributed            int,
    BusinessRunningCost         int,    
    BusinessMaintenanceCost     int,
    BusinessEarnings            int,
    BusinessNetIncome
                As BusinessEarnings - (SalaryToEmployee          + 
                                       BonusDistributed          + 
                                       BusinessRunningCost       +
                                       BusinessMaintenanceCost    )
                                           
)

La valeur est calculée et stockée dans la colonne calculée automatiquement lors de l'insertion d'autres valeurs.

Insert Into NetProfit
    (SalaryToEmployee,
     BonusDistributed,
     BusinessRunningCost,
     BusinessMaintenanceCost,
     BusinessEarnings)
Values        
    (1000000,
     10000,
     1000000,
     50000,
     2500000)    

Exemple simple que nous utilisons normalement dans les tables de log

CREATE TABLE [dbo].[ProcessLog](
[LogId] [int] IDENTITY(1,1) NOT NULL,
[LogType] [varchar](20) NULL,
[StartTime] [datetime] NULL,
[EndTime] [datetime] NULL,
[RunMinutes]  AS (datediff(minute,coalesce([StartTime],getdate()),coalesce([EndTime],getdate())))

Cela donne une différence de temps d'exécution en minutes pour l'exécution, ce qui sera très pratique.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow