如何对 SQL 中的日期和时间进行排序?
数据:
我想要的是:
- Day | Time
- M-W-F | 08:00 - 09:00 am
- M-W-F | 09:00 - 10:00 am
- .....................
- T-Th | 07:00 - 8:30 am
- T-Th | 8:30 - 10:00 am
- ....................
- Sat | 09:00 - 12:00 am
- Sat | 02:00 - 5:00 pm
我现在使用的SQL:
SELECT * FROM subject_scheduled ORDER BY time_day ASC
最佳答案
尝试以下查询。如果您知道要在日期列中存储哪一天,那么您可以在临时表中定义序列并使用它进行排序。
Declare @MasterData table (day varchar(111),seq int)
insert into @MasterData
select 'M-W-F',1
union
select 'T-Th' , 2
union
select 'Sat',3
select t.*
From subject_scheduled t
join @MasterData m on t.Day=m.day
order by m.seq,left(time,2) asc
您可能需要深入挖掘时间,因为我不确定您如何存储,就像从上午开始到下午结束时您要存储的内容一样。
关于mysql - 如何在 SQL 中对计划日期与时间进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48636897/