enter image description here我是SQL的新手。我正在处理一个需要过滤然后计算百分比的数据库。下面是示例表。 遵循的步骤:
答案 0 :(得分:1)
您可以使用where
子句进行过滤,然后使用group by
和sum
。要计算百分比,一种简单的方法是avg()
和条件聚合。
select team, client, sum(hours) sum_hours,
avg(case when nature = 'create' then 100.0 else 0 end) percent_create,
avg(case when nature = 'review' then 100.0 else 0 end) percent_review,
avg(case when nature = 'coordinate' then 100.0 else 0 end) percent_coordinate
from mytable
where nature in ('create', 'review', 'coordinate')
group by team, client