MS Access: поиск наиболее распространенного пользователя за месяц - PullRequest
0 голосов
/ 27 ноября 2018

Совершенно новый для Access 2016, и я пишу запрос для получения наиболее распространенного пользователя в базе данных в месяц.

Таким образом, запись будет

Table1
ID    Date1    
1     2019-02-28

Это мойкод, объединяющий итоговые данные за месяц:

Month: Format([Date1],"mmmm")
TopUser: (SELECT TOP 1 [Table1]![ID] FROM [Table1] GROUP BY     
[Table1]![ID] order by COUNT([Table1]![ID]) DESC)

Ожидание:

Month     TopUser
January   2
February  1
March     2
April     3

Результат:

Month     TopUser
January   2
February  2
March     2
April     2

Таким образом, мой код возвращает самого распространенного пользователя вместо этогоза каждый месяц.Я не уверен, является ли это аспектом доступа, который я неверно истолковываю, или это мои запросы.

1 Ответ

0 голосов
/ 27 ноября 2018

Попробуйте выполнить фильтрацию по месяцу:

Select 
    Format([Date1], "yyyymm") As YearMonth,
        (Select Top 1 T.ID 
        From Table1 As T
        Where Format(T.[Date1], "yyyymm") = Format(Table1.[Date1], "yyyymm")
        Group By ID
        Order By Count(T.ID) Desc) As TopID
From
    Table1
Group By
    Format([Date1], "yyyymm")
...