LOGO

LOGO
LOGO
ads header

Breaking News

PİVOT KULLANIMI



https://www.sqlservertutorial.net/sql-server-basics/sql-server-pivot/https://docs.microsoft.com/en-us/sql/t-sql/queries/from-using-pivot-and-unpivot?view=sql-server-ver15



http://www.buraksecer.com/sql-pivot-kullanimi/

Aşağıdaki örnek yukardaki siteden.. Güzel birpivot tablo  örneği

CREATE TABLE [dbo].[PivotTable](
  
      [ID] [int]   NOT NULL,
  
      [AdSoyad] [varchar](50) NULL,
  
      [Urun] [varchar](50) NULL,
  
      [Tutar] [floatNULL,
  
      [Yil] [int] NULL
  
) ON [PRIMARY]

Yukarıdaki Sql Script’ini kendi Sql komut satırınıza çalıştırıp çalıştırın. Böylece tablomuzu oluşturmuş olduk. Bu tabloya karışık bir şekilde insert atacağız.

INSERT INTO [dbo].[PivotTable]
           ([ID]
           ,[AdSoyad]
           ,[Urun]
           ,[Tutar]
           ,[Yil])
     VALUES
           (1
           ,'Burak SEÇER'
           ,'Kraker'
           ,10.4
           ,2017)
GO
 
INSERT INTO [dbo].[PivotTable]
           ([ID]
           ,[AdSoyad]
           ,[Urun]
           ,[Tutar]
           ,[Yil])
     VALUES
           (2
           ,'Melih Hilmi Uludağ'
           ,'Elektrikli Motor'
           ,499
           ,2017)
GO
 
 
INSERT INTO [dbo].[PivotTable]
           ([ID]
           ,[AdSoyad]
           ,[Urun]
           ,[Tutar]
           ,[Yil])
     VALUES
           (3
           ,'Burak SEÇER'
           ,'Laptop Bilgisayar'
           ,5000
           ,2016)
GO
 
 
INSERT INTO [dbo].[PivotTable]
           ([ID]
           ,[AdSoyad]
           ,[Urun]
           ,[Tutar]
           ,[Yil])
     VALUES
           (4
           ,'Melih Hilmi Uludağ'
           ,'Kraker'
           ,10.4
           ,2017)
GO
 
 
INSERT INTO [dbo].[PivotTable]
           ([ID]
           ,[AdSoyad]
           ,[Urun]
           ,[Tutar]
           ,[Yil])
     VALUES
           (4
           ,'Melih Hilmi Uludağ'
           ,'Salep'
           ,5
           ,2016)
GO

Çıktısı ise

SELECT *
FROM (
SELECT
AdSoyad
,Yil
,sum(Tutar) as ToplamTutar
FROM PivotTable
group by AdSoyad ,Yil
) as pTablom
PIVOT
(
SUM(ToplamTutar)
FOR Yil IN ([2017],[2016])
)
AS Pvt

Yukarıdaki kod bize aşağıdaki çıktıyı üretecek;






Hiç yorum yok