表中数据有一时间栏,是记录插入的时间.
现在需要得到工作日(去掉周六周日),上午8点到下午5点的记录,该怎么写查询?

解决方案 »

  1.   

    where datepart(hh,时间字段) between 8 and 17
      

  2.   

    and datepart(weekday,時間字段) between 2 and 6
      

  3.   

    where datepart(weekday,時間字段) between 2 and 6
    and  datepart(hour,時間字段) between 8 and 16
      

  4.   

    select * from tb where datepart(weekday,field) between 2 and 5  and datepart(hour,field) between 8 and 17
      

  5.   

    where datepart(weekday,時間字段) between 2 and 6 
    and  convert(char(05),时间字段,108) between '08:30' and '17:30' 
      

  6.   

    select * from 表 where datepart(dw,时间) not in (1,7) and datepart(hh,时间)>=8 and datepart(hh,时间)<18
      

  7.   

    select * from 表 where datepart(dw,时间) not in (1,7) and 
    convert(char(8),时间)>='08:30:00' and convert(char(8),时间)<'17:30:00'