SQL语句的SUM行与条件



我有user_id = 23,我想查询,我也有一个表work_log包括project_id, user_id, log_hours,像这样:

+----+------------+---------+-----------+
| id | project_id | user_id | log_hours |
+----+------------+---------+-----------+
| 1  |    23      |   23    |   2.5     |
| 1  |    3       |   23    |   3       |
| 1  |    23      |   23    |   1       |
| 1  |    24      |   23    |   3       |
| 1  |    24      |   23    |   1.5     |
| 1  |    23      |   23    |   0.5     |
+----+------------+---------+-----------+

但是现在我想把所有的log_hours加起来,结果是:

+------------+------------------+
| project_id | sum_of_log_hours |
+------------+------------------+
|     23     |       4          |
|     3      |       3          |
|     24     |       4.5        |
+------------+------------------+

我怎么写SQL语句有那个结果?

应该这样做:

Select project_id, sum(log_hours) as sum_log_hours
from work_log
where user_id = '23'
group by project_id

要显示所有带有sum的记录,只需删除where条件。

    SELECT project_id, sum(log_hours) AS sum_log_hours
    FROM work_log GROUP BY project_id

最新更新