我有两个A队和B队。一名队员将输入记录。 B团队成员将评估记录。每个团队都有自己的每日目标,例如A的每日目标是30个条目,B的每日目标是60个评估。 因此,在某些情况下,A或B团队成员可能同时完成这两项工作。在此期间,我们应该如何计算100%的总体百分比?
明确地说,一个团队成员在30个条目(目标)中完成了15个条目,然后他的个人成就百分比为50%。同样的逻辑也适用于B团队成员。我能够计算个人团队成员的成就百分比。
但是,如果来自任何团队的人都在处理这两件事情。我不能总结它们或做平均值,因为两者都在做不同的工作。 你能帮我解决SQL中的任何建议或公式吗?
我可以编写查询来计算百分比(如果是单个),例如。在图片中你可以观察第一个案例,在那里我可以计算百分比,因为那个人只进入,所以他的目标是30.然后成就百分比将是02 * 100/30%。同样适用于第二个10 * 100/60%。我遇到了第三种情况,即用户执行不同的操作。 我该如何计算他的整体百分比?请建议。
答案 0 :(得分:1)
如果我真的了解你想要什么,请尝试下一个代码:
use [your_db_name];
create table dbo.test17
(
[user] int null,
[date] datetime null,
records_entered int not null,
records_evaluated int not null
);
insert into dbo.test17
values (1, '2017-04-17', 2, 0), (2, '2017-04-17', 0, 10), (3, '2017-04-17', 5, 20)
select
[user],
[date],
(sum(records_entered) * 2 + sum(records_evaluated)) * 100.0 / 60 as target
from dbo.test17
group by
[user]
,[date]