declare @m int
set @m = 2
select sh04 from yourtable where
 sh05 = 0 and sh07 = 0 
 and 年月 = convert(varchar(7), dateadd(mm, (-1)*@m, getdate()), 120)

解决方案 »

  1.   

    “在離現在 1 ,2 ,3,4,5....40..月
    在連續過程中,sh05,sh07 都為0。”什么意思?
    是说在这40个月中都必须是0还是可以是任意一个月为0,月份是条件
    可選擇2, 或則12不等这是什么意思?
      

  2.   

    這是一個呆滯料件的算法!
    我以查詢12 個月上的呆滯料件
    以2003/5 為例
    select sh01,sh04 from table 
    條件:
    第一個月:2003/4 , sh05=0 and sh07=0
    第2個月:2003/3, sh05=0 and sh07=0
    .
    .
    .:
    因為在每一個月盤點時候,入出可能有變動。
    我要查出 超過12 個月沒有變動的料號:sh01. tj_dns(愉快的登山者) :查出的數據,如果中間有變動的話,就加上了!
    忽視中間數據的變動! 
     請繼續關注! 
    解決後,散分!