where _date between dateadd(s,-0.5,@date) and dateadd(s,0.5,@date) 好像不行
有什么办法

解决方案 »

  1.   

    当然可以:
    SELECT DATEADD(millisecond, 10, GETDATE())
      

  2.   

    where _date between dateadd(ss,-0.5,@date) and dateadd(ss,0.5,@date)
      

  3.   

    缩写为ms:
    SELECT DATEADD(ms, 10, GETDATE())
    datepart  缩写  
    year  yy, yyyy
    quarter  qq, q
    month  mm, m
    dayofyear  dy, y
    day  dd, d
    week wk, ww
    weekday  dw, w
    hour  hh 
    minute  mi, n
    second  ss, s
    millisecond  ms 
    microsecond  mcs 
    nanosecond  ns 
      

  4.   

    用ms
    declare @date datetime
    set @date='2011-01-01 1:00:00.900'
    select dateadd(ms,500,@date) 
    /*
    2011-01-01 01:00:01.400
    */
      

  5.   

    number 
    是一个表达式,可以解析为与 date 的 datepart 相加的 int。用户定义的变量是有效的。
    如果您指定一个带小数的值,则将小数截去且不进行舍入
    所以0.5是不行地……