Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 24.03.2015
Сообщений: 28
1

Как посчитать производительность в запросе

06.04.2016, 15:48. Показов 1255. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Как посчитать производительность (количество деталей в сутки) каждого сотрудника, например с 00:00 до 24:00 при условии что смены начинаются в разное время. Список работ и время работы в таблице "Операции". Спасибо.
Вложения
Тип файла: zip Производительность.zip (16.2 Кб, 3 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2016, 15:48
Ответы с готовыми решениями:

Как увеличить производительность при запросе к БД?
Нужен совет специалиста. Вот у меня есть такой запрос к БД $query = "SELECT id, title FROM...

Как посчитать количество в запросе?
Только начинаю изучать язык запросов. У меня есть справочник абитуриенты с реквизитами фио и дата...

Как посчитать возраст в запросе
Есть дата рождения нужно в запросе посчитать возраст Так?Фигня какая-то получается? SELECT...

Как в запросе исключить повторяющиеся записи и посчитать их. Access
В таблице вызов нужно по каждому дню определить количество вызовов с помощью запроса. Подскажите...

7
Модератор
Эксперт MS Access
11962 / 4830 / 779
Регистрация: 07.08.2010
Сообщений: 14,149
Записей в блоге: 4
06.04.2016, 16:10 2
вряд ли сотрудники работали 40 или 60 часов
видимо критерий должен быть другим

КодСотрудник_КодНачалоРаботыКонецРаботычасПростойСделано
1Иванов05.04.2016 8:00:0005.04.2016 20:00:00121:001000
2Бобров05.04.2016 8:00:0006.04.2016 15:00:00313:002500
3Петров05.04.2016 12:00:0005.04.2016 16:00:0040:1017
4Ребров03.04.2016 8:00:0003.04.2016 15:00:0070:00600
5Бобров07.04.2016 7:00:0008.04.2016 23:00:00407:003000
6Бобров08.04.2016 23:30:0009.04.2016 9:00:009,50:001000
7Иванов06.04.2016 8:00:0006.04.2016 20:00:00122:00900
8Петров05.04.2016 19:00:0005.04.2016 23:00:0040:3070
9Петров06.04.2016 2:00:0006.04.2016 15:00:00133:00100
10Ребров04.04.2016 9:00:0004.04.2016 21:00:00122:00500
11Ребров05.04.2016 15:00:0006.04.2016 3:00:00121:00600
12Иванов07.04.2016 8:00:0007.04.2016 20:00:00123:00800
13Петров06.04.2016 20:00:0007.04.2016 23:00:00277:00150
14Ребров06.04.2016 7:00:0008.04.2016 22:00:00632:001500
15Петров08.04.2016 5:00:0009.04.2016 23:00:00420:00250
2
1 / 1 / 0
Регистрация: 24.03.2015
Сообщений: 28
06.04.2016, 16:28  [ТС] 3
40 или 60 может и погорячился, но больше 24, например 26. Давайте представим что это роботы)) Сложность для меня вот в чем, время операции как бы "разрывается" временем запроса, соответственно и количество деталей нужно поделить пропорционально. Как я вижу решение этого - посчитать количество деталей в час для каждого сотрудника, а потом распределить в соответствии с временной шкалой(00:00-23:00) и суммировать за интервал времени, например сутки. Только как это сделать в запросе не могу сообразить.
0
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
06.04.2016, 16:53 4
Попробуйте запрос выдающий среднюю производительность в сутки
SQL
1
2
3
4
5
6
7
SELECT Операции.Сотрудник_Код, 
round(SUM( КонецРаботы-НачалоРаботы),3) AS Суток, 
round(SUM(Простой),3) AS суммаПростой, 
SUM(Сделано) AS Сумма, 
round(Сумма/(Суток-Nz(суммаПростой,0)),0) AS [Ср_Произв_в_сутки] 
FROM Операции
GROUP BY Сотрудник_Код
2
1 / 1 / 0
Регистрация: 24.03.2015
Сообщений: 28
06.04.2016, 17:07  [ТС] 5
Спасибо, но средняя не подходит.
В идиале: Сотрудник/Дата/Сделано за сутки
0
Модератор
Эксперт MS Access
11962 / 4830 / 779
Регистрация: 07.08.2010
Сообщений: 14,149
Записей в блоге: 4
06.04.2016, 20:20 6
Лучший ответ Сообщение было отмечено КоляБодрый как решение

Решение

попробуйте через рабочую таблицу
Миниатюры
Как посчитать производительность в запросе  
Вложения
Тип файла: zip Производительность06.zip (42.0 Кб, 3 просмотров)
2
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
06.04.2016, 20:58 7
Цитата Сообщение от КоляБодрый Посмотреть сообщение
В идиале: Сотрудник/Дата/Сделано за сутки
Еще вариант. Запрос "Сделано_за_сутки"
Вложения
Тип файла: rar Производительность.rar (17.0 Кб, 5 просмотров)
1
1 / 1 / 0
Регистрация: 24.03.2015
Сообщений: 28
11.04.2016, 18:32  [ТС] 8
mobile, спасибо, но считает не верно. Суммы всех деталей не сходяться

Добавлено через 28 секунд
shanemac51, Спасибо, то что надо!

Добавлено через 7 часов 7 минут
shanemac51, подскажите, в модуле1: period = DateDiff("h", dt1a, dt2a) + 1 у меня period = 0 если разница dt1a и dt2a меньше часа, как это получается? Вернее, что делать?
0
11.04.2016, 18:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.04.2016, 18:32
Помогаю со студенческими работами здесь

Посчитать количество в запросе!
Только начинаю изучать язык запросов 1с. У меня есть справочник абитуриенты, где есть реквизит фио...

Посчитать максимальное и минимальное значения поля во вложенном запросе
Добрый день, подскажите пожалуйста как реализовать запрос: select a.NPL, a.mst, a.tolras,...

посчитать количество совпадающих значений полученных при запросе
$rezult = mysqli_query($connection,"SELECT * FROM `cs_message` WHERE etc1 NOT IN...

Посчитать количество мужчин и женщин на каждой должности в одном запросе
Есть 2 таблицы, таблица Контакти и таблица Робота. в таблице контакты есть поле роботаИД и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru