SQL:如何显示仅代表一周中某几天的数据显示一周中的整整7天?
技术问答
215 人阅读
|
0 人回复
|
2023-09-12
|
我有一张桌子,用来存储一周中每天的数据。我想在一周中的每一天回到一行,即使在一周中没有一天。这是我目前的sql select语句。
# a! V* ?0 T9 qSELECT 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]现在,它只返回周一和周二的记录,因为这是表中存在的所有内容,但我希望它也返回到其他行,即使目前没有记录。非常感谢。!
: d0 ~+ r! A! F编辑:
* d0 M3 A6 p; B3 {这就是我所拥有的…
' O( S# k: H! L4 ]8 T$ o; u StoreID | DayOfWeek | isOpen 2222 22222Sunday 0 2222 22222Monday 1 29 29Sunday 0这就是我想要的…; r! ]% _) j1 G
StoreID | DayOfWeek | isOpen 2222 22222Sunday 0 2222 22222Monday 1 2222 22222Tuesday NULL .... 2222 22222Saturday NULL 29 Sunday 1 29 Monday NULL 29 Tuesday NULL .... 29 Saturday NULL
* ~ H2 D# t% `. S# d3 e 解决方案: |
|
|
|
|
|