2013-10-04 49 views
0

我有一個Access類中的750個類別的部分列表,然後是按部分在類別中的學生數量的計數。看起來像這樣,凌晨1點是指營地的第一週,上午是午間會議,下午是下午。將行轉換爲Access中的列

Name    Count 
Babysitting - 1am  5 
Babysitting - 1PM  7 
Arts & Crafts - 1am 9 
Arts & Crafts - 1am 6 
... 

我需要它通過每個類的會話結構。就像這樣:

Name   Week1am Week1PM 
Babysitting  5   7 
Arts & Crafts 9   6 

我有一週的時間碼類表中不同的領域,但我需要他們在類表中每個類的另一個原因名稱顯示。我知道如何獲取該查詢的名稱的最後5個字符。我用:Left ([Name], Len([Name])-5)。但是,我不確定是否在執行此操作後,如果可以通過查詢使用組來查看最終輸出,那麼我正在尋找這一點。

如果有人可以幫助,我會非常感激。

+0

使用轉機制 http://stackoverflow.com/questions/12602858/transpose-rows-into-columns-in-another-table-using-ms-access-2007 http://stackoverflow.com/questions/10210512/transpose-a-table-using-query-in-access http://stackoverflow.com/questions/736317/sql-to-transpose-row-對到列 - 在毫秒訪問數據庫 –

回答

0

這是Access中的數據透視表的基本應用。

如果你已經有你的「名稱」列在NameTime列分裂(通過使用Left()Len())功能,您可以在數據透視表輕鬆地將這樣的:

transform sum([count]) as totalCount 
select [name] 
from [yourTableOrQuery] 
group by [name] 
pivot [time] 

檢查聯機幫助transform(我發現this,但Access的在線幫助可以爲您提供更好的解釋)。

希望這可以幫助你。