现在有这样的sql查询,但星期一的7点和星期日的7点重复了,导致后续产生的星期日19点到星期一7点的数据属于周一,而不是规定的周日,有没有方法,在不影响周一本身数据的情况下,将星期日19点到星期一7点的数据定为周日(也就是周一只有一段数据,周日有两段数据)
SELECT *,
CASE
WHEN (week_day ='星期一' and( hour_of_day = 19 or hour_of_day = 7)) THEN '周一'
WHEN (week_day = '星期二' and (hour_of_day = 19 or hour_of_day = 7)) THEN '周二'
WHEN (week_day ='星期三' and (hour_of_day = 19 or hour_of_day = 7)) THEN '周三'
WHEN (week_day = '星期四' and( hour_of_day = 19 or hour_of_day =7)) THEN '周四'
WHEN (week_day = '星期五' and (hour_of_day = 19 or hour_of_day = 7)) THEN '周五'
WHEN (week_day ='星期六' and (hour_of_day = 19 or hour_of_day = 7)) THEN '周六'
WHEN (week_day = '星期日' and (hour_of_day = 7 or hour_of_day = 13)) or( week_day ='星期日' and (hour_of_day = 19) OR (week_day ='星期一'AND hour_of_day = 7) ) THEN '周日'
END AS period