SQL erweitert
johannes.kutsam.uni-linz, 26. April 2010, 22:20
Neben den Basisfunktion von SQL die im Kurs vorgestellt werden, haben Microsoft und Oracle jeweils hoch spezialisierte Erweiterungen entwickelt.
In diesem Artikel möchte ich kurz auf die Pivotfunktionen in MS SQL eingehen. Die Informationen stammen weitestgehend aus einem Artikel von Microsoft.
Mit Pivot werden die eindeutigen Werte einer Spalte selbst zu Spaltenüberschriften. In dem so 2dimensional aufgespannten Raum können nun Mengenoperationen über eine Ausprägung gemacht werden.
zB: Die Originaltabelle lautet:
DaysToManufacture | AverageCost |
0 | 5.0885 |
1 | 223.88 |
2 | 359.1082 |
4 | 949.4105
|
Die tansformierte Tabelle lautet:
Cost_Sorted_By_Production_Days 0 1 2 3 4
AverageCost 5.0885 223.88 359.1082 NULL 949.4105
und das dazu gehörende SQL Statement lautet:
SELECT 'AverageCost' AS Cost_Sorted_By_Production_Days, [0], [1], [2], [3], [4]FROM(SELECT DaysToManufacture, StandardCost FROM Production.Product) AS SourceTablePIVOT(AVG(StandardCost)FOR DaysToManufacture IN ([0], [1], [2], [3], [4])) AS PivotTable;
Vorteile
Erfahrende Datenbankadministratoren können so ohne den Umweg über Excel zu gehen, Auswertungen direkt aus dem SQL Server heraus vornehmen.
Die Gruppierungsfunktionen sind auf MSDN abrufbar und von der Version des SQL Servers abhängig.
Für die Version 2008 sind die verfügbaren Funktionen:
|
|
|
|
|
|
|
|
|
|
|
|
Das SQL Management Studio von Microsoft ist kostenlos verfügbar und bietet einem Administrator ein brauchbares Werkzeug um seine Abfragen zu entwickeln.
0 comments :: Kommentieren