wiki:AdvancedReports

Напредни извештаи од базата (SQL и складирани процедури)

Квартален извештај за задачите, покажувајќи го бројот на завршени задачи, просечниот процент на завршување и вкупниот број на задачи за секој проект:

SELECT
    Project.name AS Project_Name,
    strftime('%Y', Reminder.date_and_time) AS Year,
    CASE
        WHEN strftime('%m', Reminder.date_and_time) BETWEEN '01' AND '03' THEN 'Q1'
        WHEN strftime('%m', Reminder.date_and_time) BETWEEN '04' AND '06' THEN 'Q2'
        WHEN strftime('%m', Reminder.date_and_time) BETWEEN '07' AND '09' THEN 'Q3'
        WHEN strftime('%m', Reminder.date_and_time) BETWEEN '10' AND '12' THEN 'Q4'
    END AS Quarter,
    COUNT(Task.task_id) AS Total_Tasks,
    SUM(CASE WHEN Task.completion_percentage = 100 THEN 1 ELSE 0 END) AS Completed_Tasks,
    AVG(Task.completion_percentage) AS Average_Completion_Percentage
FROM
    Task
JOIN
    Project ON Task.project_id = Project.project_id
JOIN
    Reminder ON Task.task_id = Reminder.task_id
GROUP BY
    Project.name,
    Year,
    Quarter
ORDER BY
    Year DESC,
    Quarter DESC;

Извештај што ги анализира перформансите на корисниците врз основа на задачите што им се доделени, прикажувајќи го вкупниот број на задачи, бројот на завршени задачи и просечниот процент на завршување:

SELECT
    User.email AS User_Email,
    COUNT(Task.task_id) AS Total_Tasks,
    SUM(CASE WHEN Task.completion_percentage = 100 THEN 1 ELSE 0 END) AS Completed_Tasks,
    AVG(Task.completion_percentage) AS Average_Completion_Percentage
FROM
    User
JOIN
    Task ON User.user_id = Task.user_id
GROUP BY
    User.email
ORDER BY
    Completed_Tasks DESC,
    Average_Completion_Percentage DESC;

Last modified 3 months ago Last modified on 03/01/24 19:25:35
Note: See TracWiki for help on using the wiki.