2014-12-07 8 views
-1

У меня возникли проблемы с использованием группы по запросу в MS-доступе. У меня есть табличная структура, как показано ниже.Группировка записей и отображение каждого значения записей в одной строке

Number Date    Marks 
1   2011/3/25   20 
1   2012/3/21   50  
1   2013/3/22   22 
1   2014/3/25   56 

Я хочу, чтобы показать данные, как показано ниже

Number  march-2011 march-2012 march-2013 
1   20   50   22 

Может кто-нибудь, пожалуйста, помогите мне с этим. как я могу сделать это в ms-access, используя запрос. Я новичок в ms-access.

+0

Похоже, вы пробовали (не так ли?), Чтобы создать сводную таблицу. [Этот вопрос] (http://stackoverflow.com/questions/17591221/pivot-table-in-access) об одном и том же предмете может дать некоторые идеи, а также учебные пособия, подобные [this] (http://dotnet.tech. ubc.ca/CourseWiki/index.php?title=Access_2010_PivotTable) или [это] (https://www.youtube.com/watch?v=ZgerpTHzQes). – GolezTrol

+0

@ GolezTrol: возможно ли это с помощью запроса? – user3407459

+0

Я не уверен. Это довольно продвинутый вопрос, и даже в «больших» базах данных, таких как Oracle и MySQL, это сложная работа. – GolezTrol

ответ

0

Этот запрос просто требует условной агрегации:

select number, 
     sum(iif(year(date) = 2011 and month(date) = 3, Marks, 0)) as March2011, 
     sum(iif(year(date) = 2012 and month(date) = 3, Marks, 0)) as March2012, 
     sum(iif(year(date) = 2013 and month(date) = 3, Marks, 0)) as March2013 
from table 
group by number; 
Смежные вопросы