我有一个视图,列出员工(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并运行我的查询时,没有返回任何内容。
验证我的代码是否正确的最简单方法是什么,没有手动计算一天的队列?
任何人都可以看到上述脚本的任何问题吗?
有没有办法让上面的代码与当前日期一起使用?
答案 0 :(得分:0)
这个问题很难回答,因为它有点广泛,同时信息很少。无论如何我都会尝试:
因为之前没有人试图提取这些信息,所以我有 无法验证上述内容的准确程度。
尝试检查此查询的结果,查看几个采样日期。
我尝试使用当前日期,因为我可以在数据库中看到这些日期 比较,但代码不起作用,我改变时没有返回任何内容 到2014年的日期并运行我的查询。
很明显,查询不正在运行。你应该找出原因。运行查询的日期,您知道它应该返回结果,但不是。逐个删除条件以查看哪一个错误地删除了所有行。这应该足以识别错误。
任何人都可以看到上述脚本的任何问题吗?
不,看起来不错。一个非常简单的查询。这就是为什么我说我们的信息太少了。缺少一些关键信息可以让我们找到错误。
有没有办法让上面的代码与当前日期一起使用?
停止盯着代码并希望得到启示。调试它。实验