SQL Server’da Pivot Kullanımı
Herkese merhaba,
Bu yazıda SQL Server’da Pivot kullanımından bahsedeceğim.
SQL Server’da Pivot, rapor kullanımında fayda sağlayan bir ifadedir. Kısaca şu şekilde özetleyebilirim. Bir tablonuz var diyelim. Bu tabloda satır satır işlemleri gruplamış olun. Her sol taraftaki değer için sağ tarafta bir değer olmuş olsun. Örneği daha iyi anlamak adına Northwind veritabanını kullanarak bir örnek yapalım.
SELECT CategoryID, COUNT(UnitsInStock) AS Stoktaki_Miktar FROM dbo.Products GROUP BY CategoryID
Burada kategori id değerine göre grupladık ve stoktaki miktarı saydık.Her bir kategeori için sonucu görmektesiniz. Şimdi bu işlemi yukarıdan aşağıya değilde yan yana her kategori id değeri için gösterelim.
SELECT * FROM ( SELECT CategoryID, COUNT(UnitsInStock) AS Stoktaki_Miktar FROM dbo.Products GROUP BY CategoryID) AS pivotverileri PIVOT( COUNT(CategoryID) FOR CategoryID IN ([1],[2],[3],[4],[5],[6],[7],[8]) ) AS pvt;
Burada yapılan işlem oldukça kolay. İlk olarak yukarıda yazmış olduğunuz sorguyu bir select yapısı içine alın sonrasında bu sorguya bir alias verin. Alias ifadesi sonrası Pivot yazarak parantez açın ve yapmak istediğiniz Pivot işlemi sorgusunu bu kısma yazın. Benim yaptığım işlem Categoryid değerlerine göre saydırma işlemiydi bundan dolayı bu şekilde bir sorgu yazdım. Umarım anlaşılır olmuştur.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.