declare @a numeric(8)
select @a=isnull(@a,0)+100
select @a希望你成为我们的朋友!

解决方案 »

  1.   

    to   tj_dns(愉快的登山者) 
    你的做法我們也是這樣做的,我就是說能不能通過別的方法
    將isnull語句去掉declare @a numeric(8)
    select @a=@a+100
    select @a
    這樣就能得到正確的結果
    我是想實現這樣的方法。
      

  2.   

    要么 isnull(null字段,0 )+數值BTW 老兄: 能不能换个提问方式啊 看着别扭
      

  3.   

    ‘万一忘了’这种事不就是要程序员和测试人员避免的吗?要不然你们老板出那么多钱养你们干什么?
    Sql就是这样了,没办法吧~~~~
    你提问的方式,BTW,可能你是开玩笑似的说,但是既然大家都不喜欢你就改改嘛
      

  4.   


    要么指定初始值,要么运行时isnull判断
      

  5.   

    首先我也认为这样的方式问问题比较不好。
    其实tj_dns(愉快的登山者) 所说的方法很不错,并且你不可能每次都重复写代码吧,如果说怕万一,就没有什么是没有万一的了。
    如果你是在一个数据库里面使用,可以使用里面的默认值的方法绑定一个默认值到一个表上,这样就象设计表时设置默认值一样。可以在企业管理器中做到。
    如果是一个单独的sql语句,就使用tj_dns(愉快的登山者) 的方法得了。
    仅作参考
      

  6.   

    不管有无默认值,还是加ISNULL判断保险
      

  7.   

    同意someufo(公子黑臀)的意见啊。
    还有啊,楼主你是刚刚被女朋友甩了,还是最近换了个女上司啊?怎么这么仇视女性啊?莫非你是石头里蹦出来的?孙悟空啊。
      

  8.   

    要直接实现,不如改改ms sql的设计方式,让数值默认为0而不是null