powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
11 сообщений из 11, страница 1 из 1
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39193947
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Строка отчета «Поступило заявок всего» Реализация + отказа. Количество всех записей таблицы Заявки с разбивкой по месяцам.
1.2. Процент в таблице отчета по строке «Поступило заявок всего» - это отношение количества записей за месяц к общему количеству записей за год в процентном выражении.
1.3. Строка отчета « Светлана» - количество всех записей таблицы Заявки с разбивкой по месяцам со значением поля «Менеджер проекта» из таблицы Сотрудники = « Светлана».
1.4. Процент в таблице отчета по строке « Светлана». – это отношение количества отобранных записей (записей со значением « Светлана») за месяц к общему количеству записей за месяц.
1.5. Так далее для всех значений поля «Менеджер проекта» из таблицы Сотрудники.


Здесь результат показывает общая кол-во заявок «Поступило заявок всего» за месяц берется за 100%
Надо что общая кол-во за январь месяц разделить на общую кол-во за год * 100% (в каждом месяце)))
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
TRANSFORM MIN(N)
SELECT ord, DealStage
FROM (SELECT DealStage,M,ord,Count(1) AS N FROM SRC GROUP BY M,DealStage,ord

UNION ALL

SELECT T.DealStage,T.M & "%",T.ord,Round(Count(1)/Min(S.N)*100)
FROM SRC AS T INNER JOIN (SELECT M,Count(1) AS N FROM SRC GROUP BY M) S ON T.M=S.M
GROUP BY T.M,T.DealStage,T.ord

UNION ALL

SELECT DealStage,'ИТОГО',ord,Count(1) FROM SRC GROUP BY DealStage,ord

UNION ALL

SELECT T.DealStage,'ИТОГО%',T.ord,Round(Count(1)/Min(S.N)*100)
FROM SRC T,(SELECT Count(1) AS N FROM SRC) S
GROUP BY T.DealStage,T.ord

UNION ALL

SELECT 'Поступившие заявки',M,1,Count(1) FROM SRC GROUP BY M

UNION ALL

SELECT 'Поступившие заявки',M & '%',1,100 FROM SRC GROUP BY M

UNION ALL

SELECT 'Поступившие заявки','ИТОГО',1,Count(1) FROM SRC 

UNION ALL

SELECT 'Поступившие заявки','ИТОГО%', 1, 100 FROM SRC
)  AS X
GROUP BY ord, DealStage
ORDER BY ord
PIVOT M IN (
'Январь','Январь%',
'Февраль','Февраль%',
'Март','Март%',
'Апрель','Апрель%',
'Май','Май%',
'Июнь','Июнь%',
'Июль','Июль%',
'Август','Август%',
'Сентябрь','Сентябрь%',
'Октябрь','Октябрь%',
'Ноябрь','Ноябрь%',
'Декабрь','Декабрь%',
'ИТОГО','ИТОГО%'
);
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39193950
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ainur.sm,
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194029
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ainur.sm,

я бы видимо сделала так
D:\RAB\!!ainur\db17-2003.mdb 17 марта 2016 г.
Запрос: SRC Страница: 1—создание строки поступление

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT Username1 AS [User], [DealStage], month([DateClosed]) AS M1,
  IIf([DealStage]='Реализация',2,3) AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация','Отказ')
 UNION ALL 
SELECT Username1 AS [User], "поступление",month([DateClosed]) AS M1, 1 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация','Отказ')


Запрос: итого17 Страница: 2

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT SRC.ord, SRC.DealStage,
 sum(1) AS m99, 100 AS m99p,
 Sum(IIf(m1=1,1,0)) AS m01,  round(m01*100/m99,1) AS m01p,
 Sum(IIf(m1=2,1,0)) AS m02, round(m02*100/m99,1) AS m02p, 
 Sum(IIf(m1=3,1,0)) AS m03, round(m03*100/m99,1) AS m03p,
 Sum(IIf(m1=4,1,0)) AS m04,  round(m04*100/m99,1) AS m04p,
 Sum(IIf(m1=5,1,0)) AS m05, round(m05*100/m99,1) AS m05p, 
 Sum(IIf(m1=6,1,0)) AS m06, round(m06*100/m99,1) AS m06p,
 Sum(IIf(m1=7,1,0)) AS m07,  round(m07*100/m99,1) AS m07p,
 Sum(IIf(m1=8,1,0)) AS m08, round(m08*100/m99,1) AS m08p, 
 Sum(IIf(m1=9,1,0)) AS m09, round(m09*100/m99,1) AS m09p,
 Sum(IIf(m1=10,1,0)) AS m10,  round(m10*100/m99,1) AS m10p, 
 Sum(IIf(m1=11,1,0)) AS m11, round(m11*100/m99,1) AS m11p, 
 Sum(IIf(m1=12,1,0)) AS m12, round(m12*100/m99,1) AS m12p
 FROM SRC
 GROUP BY SRC.ord, SRC.DealStage;


Запрос: итого17u Страница: 3
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT SRC.User, SRC.ord, SRC.DealStage,
 Sum(1) AS m99, 100 AS m99p,
 Sum(IIf(m1=1,1,0)) AS m01,  Round(m01*100/m99,1) AS m01p,
 Sum(IIf(m1=2,1,0)) AS m02, Round(m02*100/m99,1) AS m02p, 
 Sum(IIf(m1=3,1,0)) AS m03, Round(m03*100/m99,1) AS m03p,
 Sum(IIf(m1=4,1,0)) AS m04,  Round(m04*100/m99,1) AS m04p,
 Sum(IIf(m1=5,1,0)) AS m05, Round(m05*100/m99,1) AS m05p, 
 Sum(IIf(m1=6,1,0)) AS m06, Round(m06*100/m99,1) AS m06p,
 Sum(IIf(m1=7,1,0)) AS m07,  Round(m07*100/m99,1) AS m07p,
 Sum(IIf(m1=8,1,0)) AS m08, Round(m08*100/m99,1) AS m08p, 
 Sum(IIf(m1=9,1,0)) AS m09, Round(m09*100/m99,1) AS m09p,
 Sum(IIf(m1=10,1,0)) AS m10,  Round(m10*100/m99,1) AS m10p,
 Sum(IIf(m1=11,1,0)) AS m11, Round(m11*100/m99,1) AS m11p, 
 Sum(IIf(m1=12,1,0)) AS m12, Round(m12*100/m99,1) AS m12p
 FROM SRC
 GROUP BY SRC.User, SRC.ord, SRC.DealStage;
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194126
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,

Добавить Менеджера тоже по месяцам и у них отдельно % отношение количества отобранных записей (записей со значением «Светлана») за месяц к общему количеству записей за месяц.
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194190
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ainur.sm,

не совсем поняла вопрос
D:\RAB\!!ainur\db17-2003.mdb 17 марта 2016 г.

Запрос: SRC Страница: 1
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT Username1 AS [User], [DealStage],"" as otkaz, month([DateClosed]) AS M1,   IIf([DealStage]='Реализация',2,3) AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация','Отказ')
 UNION ALL 
 SELECT Username1 AS [User], "поступление","" as otkaz,month([DateClosed]) AS M1,
 1 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация','Отказ')
 UNION ALL
 SELECT Username1 AS [User], [DealStage],
 iif(len(RefuseReasons & "")>0,RefuseReasons,"не заполнено"),
 month([DateClosed]) AS M1, 
 4 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Отказ')
 ORDER BY 1, 4, 5; 


Запрос: итого17 Страница: 2
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT SRC.ord, SRC.DealStage, SRC.otkaz,
 sum(1) AS m99, 100 AS m99p,
 sum(IIf(m1=1,1,0)) AS m01,  Round(m01*100/m99,1) AS m01p,
 sum(IIf(m1=2,1,0)) AS m02, Round(m02*100/m99,1) AS m02p, 
 sum(IIf(m1=3,1,0)) AS m03, Round(m03*100/m99,1) AS m03p,
 sum(IIf(m1=4,1,0)) AS m04,  Round(m04*100/m99,1) AS m04p,
 sum(IIf(m1=5,1,0)) AS m05, Round(m05*100/m99,1) AS m05p, 
 sum(IIf(m1=6,1,0)) AS m06, Round(m06*100/m99,1) AS m06p,
 sum(IIf(m1=7,1,0)) AS m07,  Round(m07*100/m99,1) AS m07p,
 sum(IIf(m1=8,1,0)) AS m08, Round(m08*100/m99,1) AS m08p, 
 sum(IIf(m1=9,1,0)) AS m09, Round(m09*100/m99,1) AS m09p,
 sum(IIf(m1=10,1,0)) AS m10,  Round(m10*100/m99,1) AS m10p,
 sum(IIf(m1=11,1,0)) AS m11, Round(m11*100/m99,1) AS m11p, 
 sum(IIf(m1=12,1,0)) AS m12, Round(m12*100/m99,1) AS m12p
 FROM SRC GROUP BY SRC.ord, SRC.DealStage, SRC.otkaz;


Запрос: итого17u Страница: 3

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT SRC.User, SRC.ord, SRC.DealStage, SRC.otkaz,
 sum(1) AS m99, 100 AS m99p,
 sum(IIf(m1=1,1,0)) AS m01,  Round(m01*100/m99,1) AS m01p,
 sum(IIf(m1=2,1,0)) AS m02, Round(m02*100/m99,1) AS m02p, 
 sum(IIf(m1=3,1,0)) AS m03, Round(m03*100/m99,1) AS m03p,
 sum(IIf(m1=4,1,0)) AS m04,  Round(m04*100/m99,1) AS m04p,
 sum(IIf(m1=5,1,0)) AS m05, Round(m05*100/m99,1) AS m05p, 
 sum(IIf(m1=6,1,0)) AS m06, Round(m06*100/m99,1) AS m06p,
 sum(IIf(m1=7,1,0)) AS m07,  Round(m07*100/m99,1) AS m07p,
 sum(IIf(m1=8,1,0)) AS m08, Round(m08*100/m99,1) AS m08p, 
 sum(IIf(m1=9,1,0)) AS m09, Round(m09*100/m99,1) AS m09p,
 sum(IIf(m1=10,1,0)) AS m10,  Round(m10*100/m99,1) AS m10p,
 sum(IIf(m1=11,1,0)) AS m11, Round(m11*100/m99,1) AS m11p, 
 sum(IIf(m1=12,1,0)) AS m12, Round(m12*100/m99,1) AS m12p
 FROM SRC
 GROUP BY SRC.User, SRC.ord, SRC.DealStage, SRC.otkaz;
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194204
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,

Первая Строка отчета «Поступило заявок всего»по месяцам Реализация + отказа. Количество всех записей таблицы Заявки с разбивкой по месяцам. рядом % отношение «Поступило заявок всего» - это отношение количества записей за месяц к общему количеству записей за год в процентном выражении.
2 Строка по менеджерам.
« Светлана» по месяцам - количество всех записей таблицы Заявки с разбивкой по месяцам со значением поля «Менеджер проекта» из таблицы Сотрудники = « Светлана».
Рядом % отношение « Светлана». – это отношение количества отобранных записей (записей со значением « Светлана») за месяц к общему количеству записей за месяц.
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194237
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ainur.sm,

C:\temp\db18-2003.mdb 17 марта 2016 г.
Запрос: SRC_m Страница: 1
SQL
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT Username1 AS [User],  month([DateClosed]) AS M1,[DealStage], 
  2 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация','Отказ')
 
 UNION ALL SELECT  "поступление",month([DateClosed]) AS M1, [DealStage],1 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация','Отказ');



Запрос: итого17м Страница: 2
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
SELECT SRC_m.ord, SRC_m.User,
 Sum(1) AS m99, 100 AS m99p, 
Sum(IIf(m1=1,1,0)) AS m01,  Round(m01*100/m99,1) AS m01p, 
Sum(IIf(m1=2,1,0)) AS m02, Round(m02*100/m99,1) AS m02p, 
 Sum(IIf(m1=3,1,0)) AS m03, Round(m03*100/m99,1) AS m03p, 
Sum(IIf(m1=4,1,0)) AS m04,  Round(m04*100/m99,1) AS m04p, 
Sum(IIf(m1=5,1,0)) AS m05, Round(m05*100/m99,1) AS m05p, 
 Sum(IIf(m1=6,1,0)) AS m06, Round(m06*100/m99,1) AS m06p, 
Sum(IIf(m1=7,1,0)) AS m07,  Round(m07*100/m99,1) AS m07p, 
Sum(IIf(m1=8,1,0)) AS m08, Round(m08*100/m99,1) AS m08p, 
 Sum(IIf(m1=9,1,0)) AS m09, Round(m09*100/m99,1) AS m09p, 
Sum(IIf(m1=10,1,0)) AS m10 , Round(m10*100/m99,1) AS m10p, 
Sum(IIf(m1=11,1,0)) AS m11, Round(m11*100/m99,1) AS m11p, 
 Sum(IIf(m1=12,1,0)) AS m12, Round(m12*100/m99,1) AS m12p
 FROM SRC_m
 GROUP BY SRC_m.ord, SRC_m.User;
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194247
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,
А как сделать как на рисунке. Сперва идет всего поступившие заявки с реализацией и отказом за месяц
А потом уже по менеджерам.
чтобы посчитал только поступление.
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194262
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ainur.sm,

можеть так

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT Username1 AS [User],  month([DateClosed]) AS M1,[DealStage], 
  2 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация')
 
 UNION ALL SELECT  "поступление",month([DateClosed]) AS M1, [DealStage],1 AS ord
 FROM qdfDeals
 WHERE Year(DateClosed)=2016 AND DealStage IN ('Реализация');
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194267
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Общие "поступившие" кол-во считает. Все нормально. Но проблема в том, что "Поступившие всего за месяц" надо разделить к общему количеству записей за год * 100 %.

А у Менеджеров отношение количества отобранных(Реализация) записей (Светлана) за месяц к общему количеству записей за месяц.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT qdfSRC.ord, qdfSRC.Users AS Выражение1, 
Sum(1) AS m99, 100 AS m99p, Sum(IIf(m1=1,1,0)) AS m01, 
Round(m01/m99*100,1) AS m01p, Sum(IIf(m1=2,1,0)) AS m02, 
Round(m02*100/m99,1) AS m02p, Sum(IIf(m1=3,1,0)) AS m03, 
Round(m03*100/m99,1) AS m03p, Sum(IIf(m1=4,1,0)) AS m04, 
Round(m04*100/m99,1) AS m04p, Sum(IIf(m1=5,1,0)) AS m05, 
Round(m05*100/m99,1) AS m05p, Sum(IIf(m1=6,1,0)) AS m06, Round(m06*100/m99,1) AS m06p, Sum(IIf(m1=7,1,0)) AS m07, Round(m07*100/m99,1) AS m07p, Sum(IIf(m1=8,1,0)) AS m08, Round(m08*100/m99,1) AS m08p, Sum(IIf(m1=9,1,0)) AS m09, Round(m09*100/m99,1) AS m09p, Sum(IIf(m1=10,1,0)) AS m10, Round(m10*100/m99,1) AS m10p, Sum(IIf(m1=11,1,0)) AS m11, Round(m11*100/m99,1) AS m11p, Sum(IIf(m1=12,1,0)) AS m12, Round(m12*100/m99,1) AS m12p
FROM qdfSRC
GROUP BY qdfSRC.ord, qdfSRC.Users;

ПЕНСИОНЕРКА,
...
Рейтинг: 0 / 0
Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
    #39194407
Ainur.sm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ainur.sm,
Сделала так
qdfSRC-1
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT UserName1 As s,  month([DateClosed]) AS M1,[DealStage] , 2 AS ord, Year(DateClosed) AS Y 
 FROM qdfDeals
 WHERE Year(DateClosed)=2014 AND DealStage IN ('Реализация*','Отказ','Получен запрос','Выслано предложение','Подтвержден подгот-ка*')
  UNION ALL 

SELECT  "поступление" AS POST, month([DateClosed]) AS M1, [DealStage],1 AS ord, Year(DateClosed) AS Y
 FROM qdfDeals
 WHERE Year(DateClosed)=2014 AND DealStage IN ('Реализация*','Отказ','Получен запрос','Выслано предложение','Подтвержден подгот-ка*');



2.
qdfP
Код: plsql
1.
2.
3.
SELECT qdfSRC.ord, qdfSRC.s AS Выражение1, Count(1) AS result
FROM qdfSRC
GROUP BY qdfSRC.ord, qdfSRC.s;




как теперь сделать по месяцам ?
1. строка "Поступившие заявки" кол-во заявок
2
3.. Users и кол-во заявок
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделать отношение кол-ва записей за месяц к общему количеству записей за год в %
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]