拉当前日期队列

时间:2014-06-21 18:28:26

标签: sql task-queue

我有一个视图,列出员工(EmpID),请求号(ReqNo),日期请求被打开(OpenDate)以及它被移动到流程中下一步的日期(AssignDate)。我想要做的是获得每日队列大小的平均值。如果EmpID 001在2013年1月1日有20个请求,那么在1/2/13上有24个,在1/3/13上有21个,3天内的平均值应该是21.66,向上舍入到22.我有以下观点:

CREATE VIEW EmpReqs
AS
SELECT [EmpID], [OpenDate], [AssignDate], [ReqID] 
FROM [Metrics].[dbo].[Assignments]
WHERE OpenDate BETWEEN '01/01/2013' AND '12/31/2013' AND
[EmpID] IS NOT NULL AND
[ReqNo] NOT LIKE 'M%'

然后我写了一个查询,每天拉出个别员工的队列:

/* First attempt to generate daily queue #s */
SELECT * FROM BLReqs
WHERE [BusLiaison] LIKE 'PN' AND
[OpenDate] <= '11/15/2013' AND 
[AssignDate] > '11/15/2013'

因为之前没有人试图提取这些信息,所以我无法验证上述信息的准确程度。我尝试使用当前日期,因为我可以在我们的数据库中看到那些比较,但代码不起作用,当我将日期更改为2014并运行我的查询时,没有返回任何内容。

验证我的代码是否正确的最简单方法是什么,没有手动计算一天的队列?

任何人都可以看到上述脚本的任何问题吗?

有没有办法让上面的代码与当前日期一起使用?

1 个答案:

答案 0 :(得分:0)

这个问题很难回答,因为它有点广泛,同时信息很少。无论如何我都会尝试:

  

因为之前没有人试图提取这些信息,所以我有   无法验证上述内容的准确程度。

尝试检查此查询的结果,查看几个采样日期。

  

我尝试使用当前日期,因为我可以在数据库中看到这些日期   比较,但代码不起作用,我改变时没有返回任何内容   到2014年的日期并运行我的查询。

很明显,查询正在运行。你应该找出原因。运行查询的日期,您知道它应该返回结果,但不是。逐个删除条件以查看哪一个错误地删除了所有行。这应该足以识别错误。

  

任何人都可以看到上述脚本的任何问题吗?

不,看起来不错。一个非常简单的查询。这就是为什么我说我们的信息太少了。缺少一些关键信息可以让我们找到错误。

  

有没有办法让上面的代码与当前日期一起使用?

停止盯着代码并希望得到启示。调试它。实验