我显示显示出A表中所有 A.开始时间 和 A.结束时间 在某天的 08:30:00 到 11:30:00 的所有数据 !大家注意要求 比如开始时间是 2008-07-07 08:31:00 结束日期是 2008-07-07 09:30:00 这样的数据都要显示出来 总之所有的还有日期不是一天的 也一样 请高手指点 !

解决方案 »

  1.   

    SELECT * FROM TB WHERE  (CONVERT(VARCHAR(12),A.开始时间,114) BETWEEN  '08:30:00' AND '11:30:00')
      AND (CONVERT(VARCHAR(12),A.结束时间,114) BETWEEN  '08:30:00' AND '11:30:00')
      

  2.   

    try
    select * from a
    where right(rtrim(convert(char,开始时间,120)),8)>'08:30:00' and right(rtrim(convert(char,结束时间,120)),8)<'09:30:00'
      

  3.   

    select * from tb where convert(varchar(8),开始时间,114) >= '08:30:00' and convert(varchar(8),结束日期,114) <= '11:30:00'
      

  4.   


    select count(1) from 表
    where right(convert(varchar(19),时间列,120),8)>='08:30:00'
    and right(convert(varchar(19),时间列,120),8)<='11:30:00'
      

  5.   

    --加几个判断条件.
    select * from tb where convert(varchar(8),开始时间,114) >= '08:30:00' and convert(varchar(8),结束日期,114) <= '11:30:00' and convert(varchar(10),开始时间,120) = convert(varchar(10),结束日期,120) and 开始时间 <= 结束时间
      

  6.   

    未明白你到底是需要'08:30:00'到'11:30:00'还是需要2008-07-07 08:30:00  到 2008-07-07 11:30:00 如果是后者直接比较即可.select * from tb where 开始时间 <= '2008-07-07 08:30:00' and 结束时间 >= '2008-07-07 11:30:00'