我有一張表,用於存儲一週中的幾天的數據。即使在我的表中沒有任何一週中的某一行,我也想爲每週的每一天返回一行。這是我當前的sql select語句。SQL:我如何使用僅表示本週某幾天的數據顯示本週的全部7天內容?
SELECT StoreID,
CASE
WHEN S.[DayOfWeek] = 1 THEN 'Sunday'
WHEN S.[DayOfWeek] = 2 THEN 'Monday'
WHEN S.[DayOfWeek] = 3 THEN 'Tuesday'
WHEN S.[DayOfWeek] = 4 THEN 'Wednesday'
WHEN S.[DayOfWeek] = 5 THEN 'Thursday'
WHEN S.[DayOfWeek] = 6 THEN 'Friday'
WHEN S.[DayOfWeek] = 7 THEN 'Saturday'
ELSE 'BAD'
END AS [DayOfWeek],
isOpen
FROM MyTable S
WHERE StoreID = @I_StoreID
ORDER BY S.[DayOfWeek]
現在它返回只是一個週一和週二創紀錄的,因爲這是所有存在詮釋他的表,但我希望它也返回其他行,即使當前沒有爲他們的記錄。謝謝!
編輯:
這是我有...
StoreID | DayOfWeek | isOpen
22 Sunday 0
22 Monday 1
29 Sunday 0
這裏就是我希望能得到...
StoreID | DayOfWeek | isOpen
22 Sunday 0
22 Monday 1
22 Tuesday NULL
....
22 Saturday NULL
29 Sunday 1
29 Monday NULL
29 Tuesday NULL
....
29 Saturday NULL
我應該還給了那裏並沒有任何記錄那些日子? – 2012-07-30 01:19:44
我在想空值?也許這可能會造成問題,但我目前還沒有想到。感謝您的問題:) – daveomcd 2012-07-30 01:20:17
@ muistooshort是的先生! – daveomcd 2012-07-30 01:40:44