# Pivot tablosu
Bir pivot tablo, Veritabanı, iş zekası programı ya da veri tablosu gibi daha geniş bir veri kümesini özetleyen istatistiksel bir tablodur. Bu özet, pivot tabloyu anlamlı bir şekilde gruplayan toplamları, ortalamaları veya diğer istatistikleri içerebilir.
Pivot tablolar, veri analizinde yaygın olarak kullanılan bir tekniktir. Verileri yeniden düzenleyerek önemli bilgileri vurgular ve analiz edilmesini kolaylaştırır.
"Her ne kadar "Pivot tablo"" genel bir terim olsa da, Microsoft 1994 yılında Amerika Birleşik Devletleri'nde "PivotTable" ticari markasını almıştır.


## Tarihçe.
"Pivot Table Data Crunching (Pivot Tablo ile veri işleme)" kitabında Bill Jelen ve Mike Alexander, Pito Salas'ı "pivot tabloların babası" olarak adlandırmaktadır. Salas, ileride Lotus Improv olarak piyasaya çıkacak yeni bir programın kavram tasarımı üzerinde çalışırken, e-tabloların veri kalıplarına (ya da örüntülerine) sahip olduğunu fark etmiştir. Kullanıcıların bu kalıpları tanımasına yardımcı olabilecek bir araç, gelişmiş veri modellerinin hızlı bir şekilde oluşturulmasına yardımcı olabilir. Improv ile kullanıcılar kategori kümelerini tanımlayıp saklayabilir, ardından kategori adlarını fare ile sürükleyerek görünümlerini değiştirebilir. Bu temel işlevsellik, pivot tablolar için bir model sağlayacaktır.
Lotus Development, Improv'u 1991 yılında NeXT platformunda piyasaya sürdü. İmprov'un piyasaya sürülmesinden birkaç ay sonra Brio Technology, DataPivot adında bağımsız bir Macintosh uygulaması yayınladı (teknoloji daha sonra 1999'da patentlendi). Borland, 1992 yılında DataPivot teknolojisini satın aldı ve kendi elektronik tablo uygulaması Quattro Pro'ya uyguladı.
1993 yılında Improv'un Microsoft Windows sürümü çıktı. 1994'ün başlarında Microsoft Excel 5 pazara "PivotTable" adı verilen yeni bir işlevsellik getirdi. Microsoft, Excel'in sonraki sürümlerinde bu özelliği daha da geliştirdi:
  - Excel 97'de yeni ve geliştirilmiş bir PivotTable Sihirbazı, hesaplanan alanlar oluşturma yeteneği ve geliştiricilerin pivot tabloları oluşturmak ve değiştirmek için Visual Basic for Applications makroları yazmalarına izin veren yeni pivot önbellek nesneleri içeriyordu.
  - Excel 2000, pivot tablo verilerini grafik olarak göstermek için "Pivot Grafikleri" ni tanıttı.
2007'de Oracle Corporation, PIVOT ve UNPIVOT operatörlerini Oracle Database 11g'de kullanıma sundu.


## Çalışma mekaniği.
Veri girişi ve saklama işlemlerinde, veriler genellikle düz tablolarda organize edilir. Bu tür tablolar, yalnızca sütunlar ve satırlardan oluşur. Örneğin, aşağıdaki e-tablo bölümü, gömlek türlerine ilişkin verileri göstermektedir:
Bu gibi tablolar birçok veri öğesi içerebilirken, bunlardan özetlenmiş bilgi almak zor olabilir. Bir pivot tablo, verileri hızlı bir şekilde özetlemeye ve istenen bilgileri vurgulamaya yardımcı olabilir. Pivot tablonun kullanımı son derece geniştir ve duruma bağlıdır. Sorulması gereken ilk soru "Ne arıyorum?" olmalıdır. Buradaki örnekte, ""Her sevk tarihi için her bölgede kaç adet sattık?" " sorusuna yanıt bulunabilir:
Bir pivot tablo genellikle satır," "sütun ve" "veri (veya "olgu") alanlarından oluşur. Bu durumda, sütun Gönderim Tarihi, satır "Bölge'dir" ve görmek istediğimiz veriler (toplam) "Birimlerdir." Bu alanlar, toplam, ortalama, standart sapma, sayım vb. çeşitli birleştirmelere izin verir. Bu durumda, gönderilen toplam birim sayısı bir toplam birleştirmesi kullanılarak görüntülenir.


## Uygulama.
Yukarıdaki örneği kullanarak, yazılım, belirlenen Bölge için tüm farklı değerleri bulur. Verilen örnekte bunlar: "Kuzey", "Güney", "Doğu", "Batı" bölgeleridir. Ayrıca, Gönderim Tarihi için tüm farklı değerleri bulacaktır. Toplama türüne göre, Toplam, Birimin gerçeğini, miktarlarını özetleyecek ve bunları çok boyutlu bir grafikte gösterecektir. Yukarıdaki örnekte, ilk referans noktası 66'dır. Bu sayı, hem "Bölge'nin" "Doğu" hem de "Sevk Tarihinin" "1/31/2005" olduğu tüm kayıtları bularak ve nihai sonuç elde etmek için bu kayıt koleksiyonunun "Birimlerini" ("yani" E2 ila E7 hücreleri) ekleyerek elde edilmiştir.
Pivot tablolar otomatik olarak oluşturulmaz. Örneğin, Microsoft Excel'de önce orijinal tablodaki verilerin tamamını seçmeli ve ardından Ekle sekmesine gitmeli ve "Pivot Tablo" (veya "Pivot Grafiği") seçilmelidir. Kullanıcı daha sonra pivot tabloyu mevcut bir sayfaya ekleme veya pivot tabloyu barındırmak için yeni bir sayfa oluşturma seçeneğine sahiptir. Veride bulunan tüm sütun başlıklarını listeleyen kullanıcıya bir pivot tablo alanı listesi sağlanır. Örneğin, bir tablo bir şirketin satış verilerini temsil ediyorsa satış tarihi, satış elemanı, satılan ürün, öğenin rengi, satılan birimler, birim fiyat ve toplam fiyatı içerebilir. Bu, verilerin daha kolay erişilebilir olmasını sağlar. 
Oluşturulacak alanlar çalışma sayfasının sağ tarafında görünür olacaktır. Varsayılan olarak, pivot tablo düzeni tasarımı bu listenin altında görünecektir.
Listedeki alanların her biri dört seçeneğe sahip olan bu düzene sürüklenebilir:
  - Rapor filtresi 
  - Sütun etiketleri 
  - Satır Etiketleri 
  - Toplama değerleri


### Rapor filtresi.
Rapor filtresi, tüm tabloya filtre uygulamak için kullanılır. Örneğin, "Ürün Rengi" alanı bu alana sürüklenirse, oluşturulan tabloya tablonun üstüne bir rapor filtresi eklenir. Bu rapor filtresinde açılır seçenekler bulunur (yukarıdaki örnekte Siyah, Kırmızı ve Beyaz). Bu açılır listeden bir seçenek seçildiğinde (bu örnekte "Siyah"), görünür olacak tablo yalnızca "Ürün Rengi = Siyah" olan satırlardan gelen verileri içerecektir.


### Sütun etiketleri.
Sütun etiketleri, pivot tabloda gösterilmesi gereken bir veya daha fazla sütuna filtre uygulamak için kullanılır. Örneğin, "Satış elemanı" alanı bu alana sürüklenirse, oluşturulan tablo "Satış Elemanı" sütunundaki değerlere sahip olur, yani bir kişinin "Satış elemanı" sayısına eşit sayıda sütun olacaktır. Verilerin Toplamı ayrı bir sütun olarak eklenir. Yukarıdaki örnekte, bu talimat, her satış elemanı için bir tane ve Genel Toplam olmak üzere, tabloda beş sütun oluşturacaktır. Verilerin üstünde "Sütun Etiketleri" adlı bir filtre olacak ve pivot tablo için belirli bir satış elemanı seçilebilir veya seçimi kaldırılabilir olacaktır.
Hiçbir sayısal alan seçilmediğinden bu tabloda herhangi bir sayısal değer olmayacaktır, ancak seçildiğinde, değerler "Genel toplam" sütununda otomatik olarak güncellenecektir.


### Satır etiketleri.
Satır etiketleri, pivot tabloda gösterilmesi gereken bir veya daha fazla satıra filtre uygulamak için kullanılır. Örneğin, "Satış elemanı" alanı bu alana sürüklenirse, oluşturulan diğer çıktı tablosunda "Satış elemanı" sütunundaki değerler bulunur, yani bir satırda "Satış Personeli" sayısına eşit sayıda satır bulunur. Ayrıca "Genel Toplam" başlıklı ek bir satır da olacaktır. Yukarıdaki örnekte bu talimat, her satış elemanı için bir tane ve Genel Toplam olmak üzere, tabloda beş satır oluşturacaktır. Verilerin üstünde - Satır Etiketleri - adlı bir filtre olacak, bu filtre ile Pivot tablosu için belirli bir satış görevlisi seçilebilir veya seçimi kaldırılabilir olacaktır.
Hiçbir sayısal alan seçilmediğinden, bu tabloda herhangi bir sayısal değer olmayacaktır, ancak seçildiğinde, değerler "Genel Toplam" Satırında otomatik olarak güncellenecektir.


### Değerlerin toplanması.
Bu genellikle farklı hesaplama türleri için kullanılabilecek sayısal değerleri olan bir alanı alır. Ancak, metin değerlerini kullanmak da yanlış olmaz; metin değerlerinin kullanılması durumunda toplam değeri yerine eleman sayısı verecektir. Dolayısıyla, yukarıdaki örnekte, "Satış sayısı" alanı, "Satış elemanı" satır etiketi ile birlikte bu alana sürüklenirse, talimat "Satış sayısı toplamı" adlı her bir satış elemanının sattığı ürün sayısını gösteren yeni bir sütun ekleyecektir. 


## Uygulama desteği.
Pivot tablolar veya pivot işlevselliği, diğer elektronik tablo uygulamalarının ve bazı veritabanı yazılımlarının ayrılmaz bir parçasıdır ve diğer veri görselleştirme araçlarında ve iş zekası paketlerinde bulunur.
  - Elektronik tablo uygulamaları
  - Microsoft Excel, PivotChart'lar aracılığıyla görselleştirilebilen PivotTable'ları destekler. 
  - LibreOffice Calc pivot tabloları destekler. 3.4 sürümünden önce bu özelliğe "DataPilot" adı verilmiştir. 
  - Google E-Tablolar yerel olarak pivot tabloları destekler.
  - Veritabanı desteği
  - Nesne-ilişkisel veritabanı yönetim sistemi olan PostgreSQL, "tablefunc" modülünü kullanarak pivot tablolar oluşturulmasına izin verir. 
  - Bir MySQL türevi olan MariaDB, CONNECT depolama motorunu kullanarak pivot tablolara izin verir. 
  - Microsoft Access, "çapraz tablo" adı altında özet sorguları destekler. 
  - Oracle veritabanı PIVOT işlemini destekler. 
  - Microsoft SQL sunucusu gibi pivot işlevlerini doğrudan desteklemeyen bazı popüler veri tabanları ve SQLite genellikle gömülü işlevler, dinamik SQL veya alt sorgular kullanarak pivot işlevselliğini ikame edebilir. Bu gibi durumlarda pivot tablo oluşturma ile ilgili sorun genellikle, sorgunun yürütülmeye başladığı zaman çıktı sütunlarının sayısının bilinmesi gerektiğidir  pivot tablo oluşturmak için bu mümkün değildir çünkü sütun sayısı verinin kendisine bağlıdır. Bu nedenle, adlar sabit olarak kodlanmalıdır veya yürütülecek olan sorgu, verilere dayanarak dinamik olarak (her kullanımdan önce anlamına gelir) oluşturulmalıdır.
  - Web uygulamaları
  - Bir Ajax altyapısı olan ZK, pivot tabloların Web uygulamalarına yerleştirilmesine de olanak tanır.
  - Programlama dilleri ve kütüphaneler
  - Tablo şeklindeki verilerle çalışmaya uygun programlama dilleri ve kütüphaneleri, pivot tabloların oluşturulmasına ve değiştirilmesine izin veren işlevler içerir. Python veri analizi araç takımı pandas "pivot_table" işlevine ve pivot tablolarının bölümlerini elde etmek için yararlı olan "xs" yöntemine sahiptir.


## Çevrimiçi analitik işleme.
Excel pivot tabloları, bir Excel elektronik tablosundan veri almak yerine çevrimiçi bir analitik işleme (OLAP) sunucusunu veri almak için doğrudan sorgulama özelliğini içerir. Bu yapılandırmada, pivot tablo OLAP sunucusunun basit bir istemcisidir. Excel'in PivotTable'ı yalnızca Microsoft'un Analiz Hizmetine değil, herhangi bir Analiz için XML (XMLA) OLAP standardıyla uyumlu sunucuya bağlanmaya da izin verir.


## Konuyla ilgili yayınlar.
  - "A Complete Guide to PivotTables: A Visual Approach" (ISBN )   (slashdot.org'da derinlemesine inceleme ) 
  - "Excel 2007 PivotTables and PivotCharts: Visual blueprint" (ISBN ) 
  - "Pivot Table Data Crunching" (Business Solutions) (ISBN ) 
  - "Beginning Pivot Tables in Excel 2007" (ISBN )