SQL Server Grouping Sets

Herkese merhaba,

Bu bölümde sizlere SQL Server’da Grouping Sets ifadesinin kullanımından bahsedeceğim. Bu ifade farklı veri gruplarını gruplandırıp birleştirmemiz de işe yarar. Konuyu bir örnekle ayrıntılı bir şekilde açıklayalım.

CREATE TABLE Calisanlar
( 
      CalisanAd varchar(25), 
      Bolge varchar(50), 
      Departman varchar(40), 
      Maas int 
)

INSERT into Calisanlar( 
                              CalisanAd, 
                              Bolge, 
                              Departman, 
                              Maas 
                        ) 

VALUES 

('Yavuz', 'Asya', 'SQL Server', 12000), 
('Pelin', 'Avrupa', 'Yazılım',  15000), 
('Büşra', 'Avrupa', 'Java Uzmanı', 5000), 
('Hasan', 'Asya', 'Grafik Tasarım', 5000), 
('Bilge', 'Asya', 'Grafik Tasarım', 20000)


SELECT Bolge, Departman, avg(Maas) Ortalama_Maas 
from dbo.Calisanlar 
Group BY 
      GROUPING SETS 
      ( 
            (Bolge, Departman), 
            (Bolge), 
            (Departman) , 
            ()          
      )

Burada bize (Bolge,Departman), (Bolge), (Departman) bazında sonuç vermiştir. İşlemin sonuçlarını daha iyi anlamak adına aşağıdaki sorguları da inceleyelim.

SELECT Bolge, Departman, avg(Maas) Ortalama_Maas 
from dbo.Calisanlar 
Group BY 
      GROUPING SETS 
      (         
            (Bolge),
	    (Departman),     
            ()          
      )

Yukarıdaki sorguda ilk departman bazında sonra da bölge bazında sonuçları göreceksiniz.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

297 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!