假設我們在SQL Server中的表存儲醫生的變化,所以不是存儲明確的日期,我們使用的是平日,表看起來像這樣的SQL Server生成使用表中的一些數據資料
ShiftId Day DoctorId FromTime ToTime
--------------------------------------------------
1 SUN 1 08:00:00 16:00:00
2 MON 1 09:00:00.00 14:00:00
3 TUE 1 09:00:00.00 15:00:00
4 WED 1 10:00:00.00 17:00:00
5 THU 1 13:00:00.00 18:00:00
我想創建一個select語句通過使用此表中存儲
例
假設我要產生之間Sunday 19th February 2017
到日期數據產生明確的日期,輸出應該是這樣的
DoctorId Date Day FromTime ToTime
------------------------------------------------------------
1 '02-19-2017' SUN 08:00:00 16:00:00
1 '02-20-2017' MON 09:00:00 14:00:00
1 '02-21-2017' TUE 09:00:00 15:00:00
1 '02-22-2017' WED 10:00:00 17:00:00
1 '02-23-2017' THU 13:00:00 18:00:00
1 '02-26-2017' SUN 08:00:00 16:00:00
1 '02-27-2017' MON 09:00:00 14:00:00
1 '02-28-2017' TUE 09:00:00 15:00:00
時報這些日期產生的說明對應於存儲在我們的示例表日的第一行中的'02-19-2017'
產生的時間是08:00:00
16:00:00
因爲'02-19-2017'
是星期天,第二行中產生的'02-20-2017'
的時間爲09:00:00 14:00:00
,因爲'02-20-2017'
是星期一等等。
正如你可能會注意到沒有爲24th February FRI
和25th February SAT
產生的日期,因爲我們不存儲在我們的餐桌Friday
和Saturday
我們可以寫在T-SQL返回此結果的查詢?
您是否需要這樣的SQL?在顯示應用程序之前操作數據會不會更容易? –
所以在這裏我應該假設你給兩個輸入變量'@ FromDate'和'@ ToDate'使用我必須生成「日期」列右? –
@ jason.kaisersmith我想在SQL中希望它生成的數據將與另一個表連接的原因,因此它在代碼中效率不高,因爲SQL –