我需要在.net中創建一個數據透視表。不能使用任何第三方控件(除非它是免費的)。我試圖找到解釋如何創建數據透視表(算法或步驟)的文檔,但幾乎所有內容都與excel相關。有沒有人知道如何在C#中創建數據透視表? 謝謝c中的樞軸表#
Q
c中的樞軸表#
11
A
回答
2
MS-Access有TRANSFORM命令(這是一個數據透視表),因此您可以使用ADO.NET查詢ms-access mdb文件,然後使用passthrough查詢來獲取數據源, t pivot(通常是MS-SQL/T-SQL)。我做了一個這個概念的證明,它的工作原理和大約比使用數組進行數據透視的VBScript實現短了大約5000個LOC。
關於MS-Access通常的貶義評論在這裏不適用,因爲你實際上並沒有將數據存儲在MS-Access中。
6
這裏幫助 http://msdn.microsoft.com/en-us/library/aa172756%28SQL.80%29.aspx
實際的表:
Year Quarter Amount
1990 1 1.1
1990 2 1.2
1990 3 1.3
1990 4 1.4
1991 1 2.1
1991 2 2.2
1991 3 2.3
1991 4 2.4
1992 4 2.4
所需的輸出:(這裏Q代表季)
Year Q-1 Q-2 Q-3 Q-4
1990 1.1 1.2 1.3 1.4
1991 2.1 2.2 2.3 2.4
1992 0.0 0.0 0.0 2.4
查詢:
Use Northwind
GO
CREATE TABLE Pivot
(Year SMALLINT,
Quarter TINYINT,
Amount DECIMAL(2,1))
GO
INSERT INTO Pivot VALUES (1990, 1, 1.1)
INSERT INTO Pivot VALUES (1990, 2, 1.2)
INSERT INTO Pivot VALUES (1990, 3, 1.3)
INSERT INTO Pivot VALUES (1990, 4, 1.4)
INSERT INTO Pivot VALUES (1991, 1, 2.1)
INSERT INTO Pivot VALUES (1991, 2, 2.2)
INSERT INTO Pivot VALUES (1991, 3, 2.3)
INSERT INTO Pivot VALUES (1991, 4, 2.4)
INSERT INTO Pivot VALUES (1992, 4, 2.4)
GO
SELECT * FROM Pivot
GO
SELECT Year,
SUM(CASE Quarter WHEN 1 THEN Amount ELSE 0 END) AS Q1,
SUM(CASE Quarter WHEN 2 THEN Amount ELSE 0 END) AS Q2,
SUM(CASE Quarter WHEN 3 THEN Amount ELSE 0 END) AS Q3,
SUM(CASE Quarter WHEN 4 THEN Amount ELSE 0 END) AS Q4
FROM Northwind.dbo.Pivot
GROUP BY Year
GO
另一個輸出:
SELECT P1.*, (P1.Q1 + P1.Q2 + P1.Q3 + P1.Q4) AS YearTotal
FROM (SELECT Year,
SUM(CASE P.Quarter WHEN 1 THEN P.Amount ELSE 0 END) AS Q1,
SUM(CASE P.Quarter WHEN 2 THEN P.Amount ELSE 0 END) AS Q2,
SUM(CASE P.Quarter WHEN 3 THEN P.Amount ELSE 0 END) AS Q3,
SUM(CASE P.Quarter WHEN 4 THEN P.Amount ELSE 0 END) AS Q4
FROM Pivot AS P
GROUP BY P.Year) AS P1
GO
0
CellSetGrid是一個開源ASP淨(C#)控制,它提供了透視表相同的功能。
這曾經是可供下載在這個網站: http://www.SQLServerAnalysisServices.com
現在該網站已經不主持這控制。所以我上傳了控制源 - CellSetGrid here。
- 您可以構建源
- 添加爲在Visual Studio工具箱中的控件。
- 拖放控制,以網絡的形式
- 設置連接字符串立方體
- 這將顯示所有的尺寸和度量值組,所以你可以拖動ñ下降,你想獲得的數據透視表一樣的功能 什麼
相關問題
- 1. XSLT樞軸表
- 2. VBA-樞軸表
- 3. VBA樞軸表
- 4. Hive中的樞軸表
- 5. 樞軸表查詢
- 6. 樞軸數據表
- 7. 樞軸表創作
- 8. 樞軸表兩次?
- 9. 具有樞軸表
- 10. 使用MULTITAB的樞軸表
- 11. Apache Pig的樞軸表
- 12. 通過VBA的樞軸表
- 13. 空列的樞軸表
- 14. 樞軸表格圖表宏
- 15. C#中的對象樞軸式場景
- 16. 樞軸
- 17. SQL查詢中樞軸列中的樞軸
- 18. 樞軸表中的總和字段
- 19. SQL-Server 2008中的樞軸表
- 20. Adwords腳本中的樞軸表Alernative
- 21. 樞軸在SQL Server中的表
- 22. R樞軸表中的求和
- 23. 分手樞軸樣式表中的SQL
- 24. 計算在樞軸表
- 25. ř求和樞軸表
- 26. 格式熊貓樞軸表
- 27. Laravel 4雄辯樞軸表
- 28. 表數據到樞軸
- 29. 樞軸在一個表上
- 30. Laravel樞軸表未找到
你想創建一個Excel數據透視表,或者你是否試圖在GridView中顯示某種類型的透視數據? – Jimmy 2009-07-01 15:12:19
我試圖在GridView中顯示數據。 – Sheraz 2009-07-01 15:13:48