SQL Server 2005 ile bir gruplama yapalım;

Tablomuzu aşağıdaki şekilde yaratalım:

CREATE TABLE tbl_meslek

(

      meslek varchar(25),

      pozisyon varchar(50),

      Departman varchar(40),

      maas int

)

 SQL Server 2005 ile sorgumuz;

SELECT pozisyon, Departman, avg(maas) OrtalamaMaas

from tbl_meslek

Group BY

      pozisyon, Departman

UNION

SELECT pozisyon, NULL, avg(maas) OrtalamaMaas

from tbl_meslek

Group BY

      pozisyon

UNION

SELECT NULL, Departman, avg(maas) OrtalamaMaas

from tbl_meslek

Group BY

      Departman

UNION

SELECT NULL, NULL, avg(maas) OrtalamaMaas

from tbl_meslek

 

SQL Server 2008 ile yeni kodumuz;

SELECT pozisyon, Departman, avg(maas) Ortalamamaas


from tbl_maas

Group BY

      GROUPING SETS

      (

            (pozisyon, Departman),

            (pozisyon),

            (Departman) ,

            ()         

      )