Özellikle excel üzerinde yapılan tablolarda verilerin sütunlarda yer aldığı görülür. Örnek vermemiz gerekirse yılın ayları yer alan bir bütçe tablosunda sütunlara ayların isimlerinin verildiğini görebiliriz. Yine yılın çeyrekleri için de bu tarz tabloları çok görürüz.
Oysa veri analizinde veya veri ambarı projelerinde normalizasyon için bize satır bazlı veriler gerekmektedir. Sütun bazlı oluşturulan bu tabloları veri analizlerinde kullanılabilir hale getirmek için unpivot işlemini uyguluyoruz.
SQL ile Unpivot
SQL kullanarak unpivot işlemi yapmak mümkündür. SQL Server’da bunu yapmanın bir yolu UNPIVOT
anahtar kelimesini kullanmaktır. Örneğin, yukarıdaki tabloyu unpivot etmek için şu şekilde bir sorgu yazabilirsiniz:
SELECT Yil, Ceyrek, Satis
FROM
(SELECT Yil, Q1, Q2, Q3, Q4
FROM Satislar) p
UNPIVOT
(Satis FOR Ceyrek IN (Q1, Q2, Q3, Q4)) AS UNPVT;