by Volkan Atasever
11. Mayıs 2009 17:11

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) ,
()
)