SQL’de pivot nedir, pivot table kullanımı nasıl olur, bu yazımda bunları anlatmaya çalışacağım.
Şimdi pivot nedir, çok kısa açıklamak gerekirse, tabloda alt alta sıralanmış kayıtları, yan yana sütunlar halinde göstermek için pivot kullanılır.
Ya da satırları sütuna çevirme işlemi de denilebilir.
Bu kullanım çok fazla bilinen ya da tercih edilen bir yöntem değildir, çoğunlukla raporlama yaparken kullanılır. Ama kullanımını öğrendikten sonra, epeyce işinize yarayacaktır.
Lafı çok uzatmadan, bu kullanımı bir örnek üzerinden anlatalım.
Şimdi elimizde tblHarcama adında aşağıdaki bir tablomuz olsun,
SELECT * FROM tblHarcama
Burada tablodaki isimlerin 2019, 2018 ve 2017 yılında yaptıkları harcamaların tutarlarının tutulduğunu düşünelim.
Şimdi, bu isimlerin yıl yıl yaptıkları harcamaların toplamlarını tek bir kolonda görmek istersek, aşağıdaki sorgu işimizi görecektir.
SELECT * FROM ( SELECT Musteri, Yil, SUM(Tutar) as ToplamTutar FROM tblHarcama GROUP BY Musteri, Yil ) AS tablom PIVOT ( SUM(ToplamTutar) --toplam tutarı istiyoruz FOR Yil --hangi satırları sütün gibi göstereceğimizi belirtiyoruz IN ([2019], [2018], [2017]) --sütun gibi görünecek kayıtları belirliyoruz ) AS pivotTablom
Sorgu sonucu aşağıdaki gibi olacaktır.
Burada görüldüğü üzere, her bir kişinin yıl içinde yaptıkları toplam harcamaları tek seferde görebiliyoruz.
Konunun daha anlaşılır olması açısından tabloyu kendiniz de oluşturup, sorguyu çalıştırarak deneme yapabilirsiniz.
Buna ek olarak bir de Pivot’un tersi olan Unpivot kullanımı vardır, bunu da daha sonra anlatacağım, dilerseniz kendiniz de araştırıp ne olduğu hakkında fikir sahibi olabilirsiniz.
Konuyu oldukça basit tutmaya çalıştım. Umarım faydalı olmuştur.

