不明白你么干十么,可以详细说明一下,把STORE PROCEDURE贴出来。,

解决方案 »

  1.   

    我觉得你没必要定义那么多的变量。datatime型本身就包括了年月日时分秒。
    你可以参考如下语句:
    declare @start_datetime datetime
    declare @end_datetime datetime
    select * from table 
      where time>@start_datetime and time<@end_datetime希望能对你有所帮助!
      

  2.   

    根据你的要求,我觉得一个参数就够了
    (由于都是datetime型,时间都是精确到千分之一秒的,用一定函数才能精确到日期,如select getdate()结果是2002-04-02 08:23:56.077
    ,而select convert(varchar(20), getdate(), 102)的结果是2002.04.02
    ,时间部份就忽略掉了)declare @time varchar(30)
    select * from table where convert(varchar(20), @time, 102)<... and convert(varchar(20), @time, 102)>...
      

  3.   

    问题可以简化
    请问如何可以将日期和时间合并并最终转换为日期?
    that's say:
    date                  time                     datatime        
    --------             --------                  ------------------- 
    2002/02/02            01:01:00                 2002/02/02 01:01:01
      

  4.   

    这样啦,
    convert(datetime,convert(varchar(10),date)+convert(varchar(8),time))
      

  5.   

    請問x_zing(阿浩)你試過了嗎? 我也曾試過類似的 語句,不過出現
    err:The conversion of a char data type to a datetime data type resulted in a out_of_rang datatime value!SELECT *
    FROM offduty_tbl
    WHERE (CONVERT(datetime, CONVERT(char(10), offduty_start_date) + CONVERT(char(8), 
          offduty_start_apm), 126) > getdate())這樣寫對嗎?
      

  6.   

    用convert转换
    where colname between convert(datetime,convert(char(11),@startdate,120)+convert(char(8),@startapm,108)) and convert(datetime,convert(char(11),@Enddate,120)+convert(char(8),@Endapm,108))