Overblog Alle Blogs Top-Blogs Technologie & Wissenschaft
Edit post Folge diesem Blog Administration + Create my blog
MENU
Werbung
Blog von Olaf Helper

GROUP BY ALL

2. Januar 2009 , Geschrieben von Olaf Helper Veröffentlicht in #T-SQL

Man lernt nie aus, ich zumindest nicht. Und beim Blättern in der BOL bin ich darüber gestolpert, das man bei GROUP BY noch ein ALL angeben kann. Was bewirkt es? Es hebelt sozusagen die WHERE Klausel aus und liefert alle Datensätze, nur die Aggregation wird nur auf die Datensätze angewandt, die der WHERE Klausel entsprechen.

Merkwürdige Option ... und sollte man auch nicht wirklich verwenden, denn: GROUP BY ALL wird in einer zukünftigen Version von Microsoft SQL Server nicht mehr unterstützt.

 

 SELECT O.CustomerID, DATEPART(yyyy, O.DueDate), SUM(O.SubTotal) 
 FROM AdventureWorks.Sales.SalesOrderHeader AS O 
 WHERE DATEPART(yyyy, O.DueDate) = 2004 
 GROUP BY ALL O.CustomerID, DATEPART(yyyy, O.DueDate) 

 

Ergebnis:

  

CustomerID

Year

SubTotal

19956

2002

NULL

15987

2003

NULL

22605

2004

1750,98

269

2002

NULL

29193

2004

49,97

25976

2004

2384,07

25638

2003

NULL

12569

2004

74,98

14530

2004

36,27

21011

2003

NULL

26894

2003

NULL

22972

2003

NULL

17243

2003

NULL

16538

2003

NULL

20460

2003

NULL

26343

2003

NULL

15649

2002

NULL

23476

2004

4,99

Usw…

 

 

 

Werbung
Diesen Post teilen
Repost0
Um über die neuesten Artikel informiert zu werden, abonnieren:
Kommentiere diesen Post