SQL Server’da Computed Columns
Herkese merhaba,
Bu yazıda SQL Server’da Computed Columns kullanımından bahsedeceğim.
SQL Server’da Computed Columns bir tabloda bir veya birden fazla kolondan yapılan bir hesaplama sonucu üretilen bir kolon’dur.
Örnek olarak bir satış tablonuz olsun birim fiyat ve adet kolonlarını çarptırarak tutar kolonu oluşturabilirsiniz ya da elinizde maliyet ve satış fiyatı var diyelim kar veya zararı otomatik olarak oluşturabilirsiniz. Örnek kullanımı inceleyelim.
--Database oluşturma CREATE DATABASE ComputedColumnOzelligi GO USE ComputedColumnOzelligi GO --Tablo oluşturma CREATE TABLE Tablo ( Sayi1 INT, Sayi2 INT, Sayi3 AS Sayi1 + Sayi2 PERSISTED ) --Tabloya veri insert etme INSERT INTO dbo.Tablo (Sayi1, Sayi2) VALUES (5 ,2),(6,3),(7,8) --Tabloyu listeleme SELECT * FROM dbo.Tablo
Burada Sayi3 adında bir alan oluşturduk. Bu alan Sayi1 ile Sayi2 alanlarını toplayarak oluşturulmuş bir alan. Bu alanı belirtirken Persisted ifadesini işlem sonrası koyuyorsunuz. Persisted olarak işaretlenmediği sürece varsayılan olarak Computed Column’lar diskte tutulmazlar yani sanaldırlar. Veri çekilmek istendiğinde otomatik olarak hesaplanırlar. Persisted olarak işaretlemek Insert, Update ve Delete performansını biraz düşürür. Select performansını ise biraz arttıracaktır. Persisted kullanımı ihtiyaca göre belirlenebilir.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.