Hesaplanmış sütun nedir ?
Hesaplanmış sütun bir tablo içerisinde bulunan 2 veya daha fazla alanın birbirleri üzerinde topluluk fonksiyonlarıyla hesaplanmış ve oluşturulmuş sütunlardır.
Hesaplanmış sütunlar fiziksel hafızada yer tutmayan sanal sütunlardır ve her sorgu işleminde yeniden hesaplanırlar. Aşağıdaki örneğimizi uyguladıktan sonra hesaplanmış sütunlar hakkında fazlasıyla bilgi sahibi olacağınıza inanıyorum.
[FONT="]CREATE[/FONT][FONT="]TABLE Basket[/FONT]
[FONT="]([/FONT]
[FONT="] ID INT IDENTITY(1,1) PRIMARY KEY,[/FONT]
[FONT="] PRODUCTID INT NOT NULL,[/FONT]
[FONT="] PRICE MONEY NOT NULL DEFAULT 0,[/FONT]
[FONT="] QUANTITY INT NOT NULL DEFAULT 0,[/FONT]
[FONT="] --Hesaplanmış sütun olarak TOTAL adında bir sütun oluşturuyoruz.[/FONT]
[FONT="] --satış fiyatı ile adeti çarpıp toplam fiyatımızı elde ediyoruz.[/FONT]
[FONT="] TOTAL AS PRICE * QUANTITY[/FONT]
[FONT="])[/FONT]
Hesaplanmış sütunlar oluşturulurken dikkat etmemiz gereken bir kaç önemli unsur mevcut. Bunlar aşağıda sırasıyla verilmiştir.
· Hesaplanan sütunu oluşturan sütunlar aynı tablo içerinde olmalıdır. Başka bir tablodan alan çekemeyiz.
· Hesaplanan sütuna DEFAULT anahtarı eklenemez.
· Hesaplanan sütun alt sorgu içeremez.
· Hesaplanan sütunun sonucu, VARCHAR(MAX), NVARCHAR(MAX), VARBINARY(MAX), IMAGE veya TEXT veri tiplerinde olamaz.
Yukarıdaki maddelere dikkat ettiğimiz sürece hesaplanan sütun oluşturmamıza herhangi bir engel mevcut değil. Oluşturduğumuz tablo içerisine bir kaç tane veri eklersek PRICE ve QUANTITY sütunlarının birbirleri ile çarpımını TOTAL sütununda görebiliriz. Bu küçük örnek bile ufkumuzu açmaya yeterli geliyor sanırım.
Hesaplanmış sütun bir tablo içerisinde bulunan 2 veya daha fazla alanın birbirleri üzerinde topluluk fonksiyonlarıyla hesaplanmış ve oluşturulmuş sütunlardır.
Hesaplanmış sütunlar fiziksel hafızada yer tutmayan sanal sütunlardır ve her sorgu işleminde yeniden hesaplanırlar. Aşağıdaki örneğimizi uyguladıktan sonra hesaplanmış sütunlar hakkında fazlasıyla bilgi sahibi olacağınıza inanıyorum.
[FONT="]CREATE[/FONT][FONT="]TABLE Basket[/FONT]
[FONT="]([/FONT]
[FONT="] ID INT IDENTITY(1,1) PRIMARY KEY,[/FONT]
[FONT="] PRODUCTID INT NOT NULL,[/FONT]
[FONT="] PRICE MONEY NOT NULL DEFAULT 0,[/FONT]
[FONT="] QUANTITY INT NOT NULL DEFAULT 0,[/FONT]
[FONT="] --Hesaplanmış sütun olarak TOTAL adında bir sütun oluşturuyoruz.[/FONT]
[FONT="] --satış fiyatı ile adeti çarpıp toplam fiyatımızı elde ediyoruz.[/FONT]
[FONT="] TOTAL AS PRICE * QUANTITY[/FONT]
[FONT="])[/FONT]
Hesaplanmış sütunlar oluşturulurken dikkat etmemiz gereken bir kaç önemli unsur mevcut. Bunlar aşağıda sırasıyla verilmiştir.
· Hesaplanan sütunu oluşturan sütunlar aynı tablo içerinde olmalıdır. Başka bir tablodan alan çekemeyiz.
· Hesaplanan sütuna DEFAULT anahtarı eklenemez.
· Hesaplanan sütun alt sorgu içeremez.
· Hesaplanan sütunun sonucu, VARCHAR(MAX), NVARCHAR(MAX), VARBINARY(MAX), IMAGE veya TEXT veri tiplerinde olamaz.
Yukarıdaki maddelere dikkat ettiğimiz sürece hesaplanan sütun oluşturmamıza herhangi bir engel mevcut değil. Oluşturduğumuz tablo içerisine bir kaç tane veri eklersek PRICE ve QUANTITY sütunlarının birbirleri ile çarpımını TOTAL sütununda görebiliriz. Bu küçük örnek bile ufkumuzu açmaya yeterli geliyor sanırım.