SQL Server’da Hesaplanmış Sütunlar Oluşturmak

Herkese merhaba,

Bu yazıda size SQL Server’da hesaplanmış sütunlar oluşturulması hakkında bilgi vereceğim.

SQL Server’da hesaplanmış sütunlar bir tablo içerisinde bulunan iki veya daha fazla alanın birbirleri ile etkileşimi ile hesaplanarak oluşturulmuş fiziksel hafızada yer tutmayan sanal sütunlardır. Konu hakkındaki örnekleri aşağıda görmektesiniz.

--Tablo oluşturulması işlemi

CREATE TABLE TOPLAMURUNFIYAT
    (
      ID INT IDENTITY(1, 1)
             PRIMARY KEY ,
      URUNID INT NOT NULL ,
      UCRET MONEY NOT NULL
                  DEFAULT 0 ,
      MIKTAR INT NOT NULL
                   DEFAULT 0 ,

      TOPLAMDEGER AS UCRET * MIKTAR
    )

--Tabloya veri insert edilme işlemi

INSERT INTO dbo.TOPLAMURUNFIYAT (
URUNID,
UCRET,
MIKTAR) VALUES (
101 , -- URUNID - int
500 , -- UCRET - money
5  -- MIKTAR - int
)

--Listelenmesi işlemi

SELECT * FROM TOPLAMURUNFIYAT

--Başka bir örnek

--Tablo oluşturulması işlemi

CREATE TABLE Personeller
    (
      PersonelID INT ,
      Ad VARCHAR(50) ,
      Soyad VARCHAR(50) ,
      AdSoyad AS Ad + SPACE(1) + Soyad	 
    )

--Veri eklenmesi işlemi

INSERT INTO dbo.Personeller (PersonelID,
Ad,
Soyad
) VALUES (1 , -- PersonelID - int
'Yavuz Selim' , -- Ad - varchar(50)
'Kart'  -- Soyad - varchar(50)
)

--Listelenmesi işlemi

SELECT * FROM Personeller

Görüldüğü üzere ToplamDeger ve AdSoyad ifadeleri, veriler tablo içine insert edilirken hesaplanarak oluşturulmuştur. Hesaplanmış sütunlar oluşturulurken dikkat edilmesi gereken kısımlar aşağıdaki gibidir.

  • Hesaplanan sütunu oluşturan sütunlar aynı tablo içerinde olmalı ve bir başka tablodan alan çekmemeliyiz.
  • Hesaplanan sütunlarda Default anahtar kelimesi kullanılmamalı.
  • Hesaplanan sütunlar alt sorgu içermemeli.
  • Hesaplanan sütun sonucu, Varchar(Max), Nvarchar(Max), Varbinary(Max), Image veya Text veri tiplerinde olmamalıdır.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

874 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!