select min(abs(datediff(second,LOC_DATE,'已知時間'))) from table1
where OUT_GOODS <>0,IN_GOODS <>0

解决方案 »

  1.   

    declare @a datetime
    set @a='2005-1-1' 
    select * from tb 
    where abs(datediff(ss,cast(@a as datetime),LOC_DATE))=(select min(abs(datediff(ss,cast(@a as datetime),LOC_DATE))) from tb where OUT_GOODS<>0 and IN_GOODS<>0 and abs(datediff(hh,cast(@a as datetime),LOC_DATE))<=5)
      

  2.   

    经过调试证明:如下是正确答案。
    declare @a datetime
    set @a='2005-1-1' 
    select * from tb 
    where abs(datediff(ss,cast(@a as datetime),LOC_DATE))=(select min(abs(datediff(ss,cast(@a as datetime),LOC_DATE))) from tb where OUT_GOODS<>0 and IN_GOODS<>0 and abs(datediff(hh,cast(@a as datetime),LOC_DATE))<=5)
    and OUT_GOODS<>0 and IN_GOODS<>0
    感谢可可的帮助,严重感谢啦!