我已經將excel中的系統原型下了下來,現在我正嘗試將它遷移到t-sql中,以便與Access數據庫C#一起使用。C#使用T-Sql組模擬Excel數據透視圖功能
不管怎麼說,我有這樣的一個表:
所需的輸出應該是這樣的:
所以據我瞭解查詢語法,Group by
和Sum
在這裏是關鍵。但是,我不知道如何做一個多重條件Group by
,並創建表部件。不知道我是否需要Distinct
,因爲Group by本質上是一回事。
到目前爲止,這是我
OleDbDataAdapter da = new OleDbDataAdapter("Select DISTINCT ([Locale]), SUM([Value]) AS 'Totals' FROM [" + Current_Table + "] GROUP BY [Locale]", connection);
這實際上並沒有做我想做的事情,它收集區域設置的總價值,但它忽略類型。但是我認爲這是朝着正確的方向邁出的一步,我不知道如何涉及更多的條件,因爲編譯器繼續吐出缺少的操作錯誤。
我正確地認爲這是一個多重查詢問題嗎?在生成第一列之後,我需要編寫另一個查詢或下一個查詢並將其追加到臨時列等?或者可以一次完成嗎?在Excel中做這件事很容易。
關於這個關鍵點,我當前的過程是否正確,因爲這些列是用As
函數生成的新函數?
我試過了,它似乎按預期工作。但是,最近我瞭解到MS Access的一個特性,它簡化了我的這個問題,代碼如下:'TRANSFORM SUM(Amount_USD)AS總和SELECT DISTINCT帳戶作爲未調整FROM [「+ Current_Table +」] GROUP BY帳戶PIVOT狀態「雖然你的回答確實指向了我正確的方向! – Arvayne