Intereting Posts

Как суммировать общее время, используя каждую неделю месяца?

В mysql db у меня есть поле с именем time_utilize с типом времени, в котором хранятся общие затраты времени в день, а в этой таблице – записи за каждый месяц. Теперь я хочу найти общий трафик времени для пользователя в каждую неделю выбранного месяца. Я искал это, но я нашел отличный запрос, чтобы найти общее время в течение всего месяца, а именно:

SELECT Sec_to_Time(Sum(Time_to_Sec(time_utilize))) FROM attendance WHERE staff_id = 'sajid' 

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

Ниже изображена результирующая таблица

Related of "Как суммировать общее время, используя каждую неделю месяца?"

Предполагая, что таблица attendance содержит столбец attendance_date , приведенный ниже запрос может дать вам общее время, используемое в неделю в месяце:

 SELECT WEEK(`attendance_date`) `attendance_week`, SEC_TO_TIME(SUM(TIME_TO_SEC(`time_utilize`))) `attendance_time_utilized` FROM `attendance` GROUP BY `attendance_week`; 

В вышеприведенном запросе attendance_week рассчитывается как неделя года, от 1 до 52.

Другая форма вывода может заключаться в том, чтобы показать недели как 1,2,3,4. Для этого вы можете попробовать этот запрос:

 SELECT (`attendance_week` - `min_week` + 1) `att_week`, `attendance_time_utilized` FROM ( SELECT WEEK(`ATT`.`attendance_date`) `attendance_week`, SEC_TO_TIME(SUM(TIME_TO_SEC(`ATT`.`time_utilize`))) `attendance_time_utilized`, `T1`.`min_week` FROM `attendance` `ATT` INNER JOIN (SELECT MIN(WEEK(`attendance_date`)) `min_week` FROM `attendance`) T1 GROUP BY `attendance_week` ) T2; 

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