我正在开发一个项目,我需要通过查询对列数据求和,列包含工作时间。
还是有其他方式/解决方案吗?
答案 0 :(得分:4)
SELECT sum(hours) FROM tableName.
答案 1 :(得分:3)
在这里你有一些选择......
整个小时的总小时数
select
sum(hours)
from
tasks;
每个结束日期的总小时数
select
end_date, sum(hours)
from
tasks
group by end_date;
每个项目的总时数
select
project_id, sum(hours)
from
tasks
group by project_id;
每位员工的总时数
select
emp_id, sum(hours)
from
tasks
group by emp_id;
每个项目每位员工的总时间
select
project_id,emp_id, sum(hours)
from
tasks
group by project_id,emp_id;
我想你明白了:)
你当然可以添加一个where子句,例如where start_date between
...或end_date =
答案 2 :(得分:1)
使用(sum
)mysql聚合函数:
SELECT sum(hours) FROM tasks
这是一个很好的教程:
答案 3 :(得分:-2)
如果您想计算每个项目的总小时数,则需要执行以下操作
select *,sum(hours) as totalHours from tasks
group by project_id
如果您想在表格中汇总所有小时数,可以省略分组。
这也适用于其他聚合函数,例如group_concat(),min,max等(Docs)。