在MS Access中透视数据

我创建了一个查询,以提取他们在一个多月的时间内获取的学生证和饭菜。我想计算一下学生在一个月中服用的每种物品(早餐,午餐,小吃)的数量。


数据透视表报表中似乎有太多数据无法访问,因此我希望可以代替它运行一个SQL查询。


这是我创建的当前查询:


SELECT April2013.SID, MenuItems.MealType AS Apr2013Meal  

FROM April2013 LEFT JOIN MenuItems ON MenuItems.Item=April2013.Item;  

电流输出:


+-----+-----------+  

| SID |   Meal    |  

+-----+-----------+  

| 001 | Lunch     |  

| 002 | Lunch     |  

| 003 | Breakfast |  

| 004 | Snack     |  

| 005 | Lunch     |

| 006 | Lunch     |  

| 001 | Breakfast |  

| 003 | Snack     |  

| 004 | Breakfast |  

+-----+-----------+

这是我想要的样子:


+-----+-----------+-------+---------+  

| SID | Breakfast | Lunch | Snack   |  

+-----+-----------+-------+---------+  

| 001 |         3 |    10 |     1   |  

| 002 |         4 |     8 |    10   |  

| 003 |        18 |     2 |     7   |  

| 004 |         6 |     7 |     2   |  

+-----+-----------+-------+---------+  


交互式爱情
浏览 422回答 1
1回答

翻阅古今

您可以使用TRANSFORM旋转数据:TRANSFORM COUNT(MenuItems.MealType)SELECT April2013.SID, MenuItems.MealTypeFROM April2013 LEFT JOIN MenuItems   ON MenuItems.Item=April2013.ItemGROUP BY April2013.SIDPIVOT MenuItems.MealType; 
打开App,查看更多内容
随时随地看视频慕课网APP