SQL Select Case和Average

时间:2013-01-03 15:27:52

标签: sql case average

您好我有一张表,其中包含自动计算任期的员工任期(整数,以周计算)。我当时正试图每周平均任期。但是,我想限制一名员工可以拥有的最长任期为20天(以周计)。

我到目前为止所做的是这个,但它不起作用:

SELECT week,
AVG(CASE Tenure WHEN Tenure > '20' THEN '20' ELSE Tenure END) as Tenure
FROM table
GROUP BY week
ORDER BY week

我是否在正确的轨道上?请帮帮我。我试过看其他类似的问题但没有成功。

提前致谢,

Giusepe Moreno

1 个答案:

答案 0 :(得分:6)

试试这个

SELECT week,
AVG(CASE WHEN Tenure > 20 THEN 20 ELSE Tenure END) 
FROM table
GROUP BY week
ORDER BY week