Chcete vypočítaný sloupec. Například:
CREATE TABLE tab1
(
ID INT IDENTITY(1,1)
,[Type] VARCHAR(10)
,IsValued AS CASE [Type] WHEN 'S' THEN 1
WHEN 'R' THEN 0
END
)
Do existující tabulky můžete přidat pomocí následující syntaxe:
ALTER TABLE dbo.tab1 ADD IsValued AS CASE [Type] WHEN 'S' THEN 1
WHEN 'R' THEN 0
END
Sloupec můžete nastavit jako trvalý přidáním klíčového slova PERSISTED
po vytvoření sloupce. Přetrvávání sloupce znamená, že pole je uloženo na disku. Když vložíte nebo aktualizujete záznam, SQL server zjistí hodnotu v tomto bodě. Pokud tak neučiníte, SQL Server to bude muset vyřešit při každém přístupu k řádku. Dobré vysvětlení lze nalézt na SQL Server 2005 Computed Sloupec je trvalý
ALTER TABLE dbo.tab1 ADD IsValued AS CASE [Type] WHEN 'S' THEN 1
WHEN 'R' THEN 0
END PERSISTED