3
我需要將一列LeadDate(數據類型爲datetime)與另一個表(名爲EmployeeWorkTime)中保存的值進行比較。 LeadDate列的格式是這樣的「2006-08-08 11:50:51。000」。如何在表上進行雙重比較
的employeeworktime表是這樣的:
SyStaffId Associate Name Monday Tuesday Wednesday Thursday Friday Saturday Sunday
34128 Natasha Dawson 0919 0918 0920 0918 0918 WKEND WKEND
34169 Elaine Bueno 0918 1019 0918 1019 0918 WKEND WKEND
34385 Aida Rodriguez 0918 1019 0918 1019 0918 WKEND WKEND
34419 Sy Lim 1019 1019 1019 1019 0918 WKEND WKEND
我創建一個視圖,包括我需要比較的各個領域。新觀點與附件一樣。但是,當我想比較交易時間和時間列中的值時。我有一些困難。由於前導日期不同,因此它們在DayofWeekName列中,我想將前置時間與只有一個與前一天相同的列進行比較。我怎麼能這樣做?
例如,第一領先,dayofweekname是Thursay,我想copmare的交貨期這是leadhour列到週四列,我怎麼會寫代碼來實現它。
非常感謝。
用於創建新視圖的命令:
Create View dbo.cstAdmissionDailyReportLeadCount_jy
AS
SELECT dbo.syStudent.AmRepID, dbo.syStudent.LeadDate, DATEPART(dw, syStudent.LeadDate) AS DayofWeekNumber, DATEPART(hh, syStudent.LeadDate)
AS LeadHour, dbo.EmployeeWorkTime.[Associate Name], DATENAME(dw, syStudent.LeadDate) AS DayofWeekName, EmployeeWorkTime.Monday,
EmployeeWorkTime.Tuesday, EmployeeWorkTime.Wednesday, EmployeeWorkTime.Thursday, EmployeeWorkTime.Friday,
EmployeeWorkTime.Saturday, EmployeeWorkTime.Sunday, CASE WHEN DATEPART(hh, syStudent.LeadDate)
< 18 THEN 1 ELSE 0 END AS CountAsEffectiveLead
FROM dbo.syStudent INNER JOIN
dbo.EmployeeWorkTime ON dbo.syStudent.AmRepID = dbo.EmployeeWorkTime.SyStaffId