--生成测试数据
create table #t(id  int,start_time datetime,duration varchar(8))
insert into #t select 1,'2005-7-12 4:02:00','00:29:00'
insert into #t select 2,'2005-7-12 4:31:00','00:24:00'
insert into #t select 3,'2005-7-12 5:00:10','00:10:00'
insert into #t select 4,'2005-7-12 5:30:00','00:30:00'
--执行查询
select id,start_time+cast(duration as datetime) from #t
--输出结果
1    2005-07-12 04:31:00.000
2    2005-07-12 04:55:00.000
3    2005-07-12 05:10:10.000
4    2005-07-12 06:00:00.000

解决方案 »

  1.   

    --生成测试数据
    create table #t(id  int,start_time datetime,duration varchar(8))
    insert into #t select 1,'2005-7-12 4:02:00','00:29:00'
    insert into #t select 2,'2005-7-12 4:31:00','00:24:00'
    insert into #t select 3,'2005-7-12 5:00:10','00:10:00'
    insert into #t select 4,'2005-7-12 5:30:00','00:30:00'
    --执行查询
    select 
        id,start_time+cast(duration as datetime) 
    from 
        #t
    where
         start_time+cast(duration as datetime) between '2005-7-12 4:30:00' and '2005-7-12 5:00:00' 
    --输出结果
    1    2005-07-12 04:31:00.000
    2    2005-07-12 04:55:00.000
      

  2.   

    --生成测试数据
    create table #t(id  int,start_time datetime,duration varchar(8))
    insert into #t select 1,'2005-7-12 4:02:00','00:29:00'
    insert into #t select 2,'2005-7-12 4:31:00','00:24:00'
    insert into #t select 3,'2005-7-12 5:00:10','00:10:00'
    insert into #t select 4,'2005-7-12 5:30:00','00:30:00'
    --执行查询
    select 
        id,start_time+cast(duration as datetime) 
    from 
        #t
    where
         start_time+ duration  between '2005-7-12 4:30:00' and '2005-7-12 5:00:00' 会自己转换的
      

  3.   

    select * from tb where start_time+cast(duration as datetime) between '2005-7-12 4:30:00' and '2005-7-12 5:00:00'