我不確定這是否可以在MSSQL中完成。我有一個Timesheets表,我希望用戶能夠放入日期範圍並查看該範圍的所有時間表。需要注意的是,我也希望他們查看「缺失」時間表。推斷缺少的表條目
用戶每週進入時間表程序並創建一個時間表。當他們完成了幾個小時後,他們提交時間表,然後他們的直線經理將批准時間表(這是相關的,與我一起)。
我遇到的問題是,如果他們從未爲給定的一週創建時間表。我似乎無法讓它出來。我有下面的查詢,它會告訴我,如果用戶沒有爲給定的範圍創建一個Timesheet,但是如果有的話,在給定的範圍內有3周,並且在那些星期中有1個Timesheet,它不會報告有2個「缺少」時間表的事實。
SELECT U1.Name, T.EndDate,
CASE T.Submitted
WHEN 1 THEN 'Yes'
ELSE 'No'
END AS Submitted,
CASE T.Approved
WHEN 1 THEN 'Yes'
ELSE 'No'
END AS Approved
FROM Users U1
LEFT OUTER JOIN Timesheets T ON U1.idUser = T.id_User AND (T.EndDate <= '2014-10-24' AND T.EndDate >= '2014-10-03')
WHERE U1.Active = 1
ORDER BY U1.Name
從技術上講,這兩個日期將是參數,我只是將它們內聯在一起,使事情變得更容易一些。是否有可能做我想做的事情?
完美!感謝您的鏈接,這就是我需要的。 – Trent 2014-10-30 00:42:16