Zoeken…


Een kolom wordt berekend op basis van een uitdrukking

Een berekende kolom wordt berekend op basis van een uitdrukking die andere kolommen in dezelfde tabel kan gebruiken. De uitdrukking kan een niet-berekende kolomnaam, constante, functie en elke combinatie hiervan zijn die door een of meer operatoren is verbonden.

Maak een tabel met een berekende kolom

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

Waarde wordt automatisch berekend en opgeslagen in de berekende kolom bij het invoegen van andere waarden.

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

Eenvoudig voorbeeld dat we normaal in logboektabellen gebruiken

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())))

Dit geeft een runverschil in minuten voor runtime, wat erg handig zal zijn ..



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow