2014-06-21 61 views
0

我有一個視圖,列出僱員(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

這個問題真的很難回答,因爲它是一種廣泛的,同時有很少的信息。我會想試試:

因爲沒有人嘗試之前,拉這個信息,我有 沒有以上情況驗證如何準確的方式。

嘗試在幾個採樣日期檢查此查詢的結果。

我試着用當前的日期,因爲我可以看到那些在我們的數據庫中 比較,但代碼不能正常工作,當我改變 日期至2014年不返回任何結果並運行我的查詢。

顯然,查詢是而不是的工作。你應該找出原因。運行查詢的日期,你知道它應該返回結果,但沒有。逐個刪除條件以查看哪一個不正確地刪除所有行。這應該足以識別錯誤。

任何人都可以看到上述腳本的任何問題?

不,看起來不錯。一個非常簡單的查詢。這就是爲什麼我說我們信息太少。有一些關鍵信息丟失,使我們能夠發現錯誤。

有沒有辦法讓上面的代碼與當前日期一起工作?

停止盯着代碼,希望有一個啓示。調試它。實驗。

+0

我想問題是我盯着代碼太久,變得非常沮喪。我休息了一會兒,今天我會再次擊中它。 – MKowalski