SQL Server: ROLLUP
Bei der Verwendung ROLLUP
in SQL server, wie bekomme ich die subtotal-Zeilen über die Detail-Zeilen?
Dies ist, was würden Sie in der Regel, wenn ROLLUP
:
Group Name Total Sales
---------------- --------------- ------------
Europe France 74569.00
Europe Germany 59456.00
Europe United Kingdom 78327.00
Europe NULL 212352.00 << sub total row for Europe appears **after** all the individual rows for Europe.
North America Northwest 208774.00
North America Southeast 145477.00
North America Southwest 164232.00
North America NULL 518483.00
Pacific Australia 93403.00
Pacific NULL 93403.00
Dies ist das erwartete Ergebnis festgelegt:
Group Name Total Sales
---------------- --------------- ------------
Europe NULL 212352.00 << sub total row for Europe needs to appear **before** the individual rows for Europe.
Europe France 74569.00
Europe Germany 59456.00
Europe United Kingdom 78327.00
North America NULL 518483.00
North America Northwest 208774.00
North America Southeast 145477.00
North America Southwest 164232.00
Pacific NULL 93403.00
Pacific Australia 93403.00
Abfrage verwendet:
SELECT [Group], [Name], SUM([SalesYTD]) AS 'Total Sales'
FROM #TempTable
GROUP BY [Group], [Name] WITH ROLLUP
Irgendwelche Ideen, wie wir könnten diese Ausgabe?
- . . Kannst du die Abfrage, die Sie verwenden, um erste Ergebnisse?
- Bitte sei klar, in "Zwischensumme Zeilen über die Detail-Zeilen"..??
- Ich habe es zu der Frage.
- Ich beziehe mich auf die zwischensummenzeilen angezeigt, die auf das Ergebnis festgelegt, wenn
ROLLUP
. Ich habe auch den text in der Frage: Angabe der Zeilen, auf die ich mich beziehe. Tks. WITH ROLLUP
wird in einer zukünftigen version von SQL Server.- Ich denke, einer von uns hatte gelesen das Unrecht. Soweit ich sehen kann,
GROUP BY ALL
ist veraltet, der rest nicht.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht explizit um die Ergebnisse so, wenn Sie sagen dies ist, was Sie würden in der Regel bekommen ... sub Zeile "total" für Europa erscheint, nachdem alle die einzelnen Zeilen für Europa du bist einfach nur immer Glück.
Versuchen Bestellung Ihrer Ergebnismenge:
Obwohl auch versuchen nicht mit
WITH ROLLUP
als auch:NULL
kam als letzter (in aufsteigender Reihenfolge Sortieren). Aber ich bin Irre: Null-Werte behandelt werden als die niedrigsten möglichen Werte.