SQL Server’da Unpivot Tablo Oluşturmak

Herkese merhaba,

Bu yazıda SQL Server’da Unpivot Tablo oluşturma işleminden bahsedeceğim.

Unpivot kısaca verilerin bulundugu tabloyu dikey olarak çevirmek için kullanılan bir komuttur.

İşlemi daha iyi anlamak adına aşağıdaki örneği inceleyelim.

--Tablo oluşturulması 

CREATE TABLE UrunMaliyetleri
(
    Tarih DATETIME,
    AMaliyeti NUMERIC(25, 6),
    BMaliyeti NUMERIC(25, 6),
    CMaliyeti NUMERIC(25, 6),
    DMaliyeti NUMERIC(25, 6),
    EMaliyeti NUMERIC(25, 6),
    FMaliyeti NUMERIC(25, 6)
); 

--Verilerin Eklenmesi 

INSERT INTO dbo.UrunMaliyetleri
(
    Tarih,
    AMaliyeti,
    BMaliyeti,
    CMaliyeti,
    DMaliyeti,
    EMaliyeti,
    FMaliyeti
)
VALUES
(GETDATE() - 7, 10, 20, 30, 40, 50, 60),
(GETDATE(), 20, 40, 60, 80, 100, 120);

--Tabloların kontrol edilmesi 

SELECT *
FROM dbo.UrunMaliyetleri;

--Unpivot oluşturulması 
SELECT t.Tarih,
       t.Maliyet,
       t.MaliyetTuru
FROM dbo.UrunMaliyetleri tablo
    UNPIVOT
    (
        Maliyet
        FOR MaliyetTuru IN (AMaliyeti, BMaliyeti, CMaliyeti, DMaliyeti, EMaliyeti, FMaliyeti)
    ) AS t;

Tablomuz ilk başta şu şekildeydi.

SQL Server’da Unpivot Tablo Oluşturmak

Unpivot komutu ile düzenlediğimiz sorguyu çalıştırınca aşağıdaki gibi bir sonuç almış olacaksınız.

SQL Server’da Unpivot Tablo Oluşturmak

Görüldüğü üzere unpivot tablo oluşturma işlemi yapılmış oldu.

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

213 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.

Aşağıdaki Yazılar da İlginizi Çekebilir

Yazı kopyalamak yasaktır!