简体   繁体   中英

monthly report for Project and total billingtime

I'm trying to create sql statement to show how many total time spent on project in monthly basses can someone help me sql query

SELECT Projects.projectID,
        Projects.projectName,
        billingsTimes.actualTotalTime,
        billingsTimes.taskID,
        Tasks.taskName
  FROM Projects_tasks
       INNER JOIN Projects ON Projects_tasks.projectID = Projects.projectID
       INNER JOIN Tasks ON Projects_tasks.taskID = Tasks.taskID
       INNER JOIN billingsTimes ON Tasks.taskID = billingsTimes.taskID

在此处输入图片说明

DB diagram

Will this work?:

SELECT  Projects.projectID,
        Projects.projectName,
        SUM(billingsTimes.actualTotalTime),
        billingsTimes.taskID,
        Tasks.taskName, 
        MONTH(billingTimes.createdOn),
        YEAR(billingTimes.createdOn)
FROM    Projects_tasks
        INNER JOIN Projects ON Projects_tasks.projectID = Projects.projectID
        INNER JOIN Tasks ON Projects_tasks.taskID = Tasks.taskID
        INNER JOIN billingsTimes ON Tasks.taskID = billingsTimes.taskID
GROUP BY
        Projects.projectID,
        Projects.projectName,
        billingsTimes.taskID,
        Tasks.taskName, 
        MONTH(billingTimes.createdOn),
        YEAR(billingTimes.createdOn)
select p.projectID,
    p.projectName,
    year(bt.createdOn) as Year,
    month(bt.createdOn) as Month,
    sum(bt.actualTotalTime) as TotalTime
from Projects_tasks pt
inner join Projects p on pt.projectID = p.projectID
inner join Tasks t on p.taskID = t.taskID
inner join billingsTimes bt on t.taskID = bt.taskID
group by p.projectID,
    p.projectName,
    year(bt.createdOn),
    month(bt.createdOn),

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM